小编Maj*_*ons的帖子

单元测试 - 不能从理论转向实践

似乎我遇到的每个单元测试示例都非常明显和罐装.像断言x + 3 == 8等等.我只是很难看到我如何单元测试现实世界的东西,比如SQL查询,或者用于表单验证的regEx实际上是否正常工作.

例证:我正在开发两个由DB驱动的ASP.NET MVC 2站点.我为每个人都有一个测试单元解决方案,但不知道哪种测试会有用.该站点将完成的大部分工作是向数据库写入数据,或从数据库中检索和组织数据.我只是测试各种查询是否成功访问了数据库?我如何测试正确性(例如,数据被写入正确的字段,或正确检索的数据)?

我只是很难将我自己的非正式测试和调试方式转换为更正式的断言(x)类测试.

unit-testing asp.net-mvc-2

5
推荐指数
2
解决办法
327
查看次数

PHP to Quickbooks - 如果她在桌面上运行,如何连接这两个?

我的任务是为一家小型本地企业提供电子商务解决方案.我的客户使用Intuit/Quickbooks销售点软件.我刚刚发现Intuit有一系列允许互操作性的PHP 5+类(链接可能会偶然发现其他任何人:https://code.intuit.com/sf/sfmain/do/viewProject/projects.php_devkit).

该网站将托管在共享主机上,因此这两个系统完全分开.她的桌面确实可以上网.

所以,我的问题:

  1. 有没有办法让我通过卷曲连接到她的桌面?
  2. 如果是这样,如果我无法在主机上创建VPN,有没有办法安全地执行此操作?
  3. 现在我考虑一下,有没有我可以使用的VPN服务?
  4. 我应该注意的任何其他安全事项?

付款处理将通过Stripe(http://www.stripe.com)处理.这实际上只适用于库存/订单同步.

php quickbooks e-commerce

5
推荐指数
1
解决办法
2293
查看次数

Symfony2 - 试图在prod环境中查看我的网站导致空白屏幕; 开发中没有错误/警告

由官方Symfony Google Group交叉发布,因为时间问题:

我正在努力将我的网站上传到我的主机.在开发环境中一切运行良好 - 没有错误,没有警告.当我尝试在prod(localhost/web/app.php /)中访问它时,我得到一个空白屏幕.我试图清除缓存,看看是否有帮助,但得到以下错误:

$ app/console cache:clear --env=prod

[Symfony\Component\DependencyInjection\Exception\InvalidArgumentException] 
The parameter "kernel.trusted_proxies" must be defined. 
Run Code Online (Sandbox Code Playgroud)

我可以毫无问题地清除开发缓存.

请帮忙.

php symfony

5
推荐指数
1
解决办法
3772
查看次数

Symfony2/FOSUserBundle - 使用多个捆绑包路由问题

问题类似,我需要为我的网站的管理员和前端捆绑包单独登录.管理员实际上是一个独立的捆绑包vendors.

现在,我的路由看起来像:

应用程序/配置/ routing.yml中:

AcmeSiteBundle:
    resource: "@SiteBundle/Resources/config/routing.yml"
    prefix:   /

AcmeAdminBundle:
    resource: "@AdminBundle/Resources/config/routing.yml"
    prefix:   /admin/
Run Code Online (Sandbox Code Playgroud)

这两个bundle的各个routing.yml文件都有:

fos_user_security:
    resource: "@FOSUserBundle/Resources/config/routing/security.xml"

fos_user_profile:
    resource: "@FOSUserBundle/Resources/config/routing/profile.xml"
    prefix: /profile

fos_user_register:
    resource: "@FOSUserBundle/Resources/config/routing/registration.xml"
    prefix: /register

fos_user_security_login:
    pattern:  /login
    defaults: { _controller: FOSUserBundle:Security:login }

fos_user_security_check:
    pattern:  /login_check
    defaults: { _controller: FOSUserBundle:Security:check }

fos_user_security_logout:
    pattern:  /logout
    defaults: { _controller: FOSUserBundle:Security:logout }
Run Code Online (Sandbox Code Playgroud)

我的防火墙在security.yml中:

firewalls:
    main:
        context: site
        pattern: ^/admin/
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
            login_path:  /admin/login
            check_path:  /admin/login_check
        logout:
            path: /admin/logout
        anonymous:    true

    frontend:
        context: site …
Run Code Online (Sandbox Code Playgroud)

php user-management symfony

5
推荐指数
1
解决办法
8823
查看次数

PhpStorm 7.1.3,XDebug 2.2.3,Symfony 2.4 - 找不到WebTestCase

尝试在PhpStorm中运行我自己的Symfony单元测试时出现以下错误:

/usr/bin/php /home/kevin/www/src/Blah/MyBundle/Tests/Controller/HomeControllerTest.php
PHP Fatal error:  Class 'Symfony\Bundle\FrameworkBundle\Test\WebTestCase' not found in /home/kevin/www/src/Blah/MyBundle/Tests/Controller/HomeControllerTest.php on line 8
PHP Stack trace:
PHP   1. {main}() /home/kevin/www/src/Blah/MyBundle/Tests/Controller/HomeControllerTest.php:0

Fatal error: Class 'Symfony\Bundle\FrameworkBundle\Test\WebTestCase' not found in /home/kevin/www/src/Blah/MyBundle/Tests/Controller/HomeControllerTest.php on line 8

Call Stack:
0.0002     234112   1. {main}() /home/kevin/www/src/Blah/MyBundle/Tests/Controller/HomeControllerTest.php:0


Process finished with exit code 255
Run Code Online (Sandbox Code Playgroud)

一些研究告诉我,我可能不得不将PhpStorm/Xdebug指向Symfony的bootstrap和/或测试套件XML文件,但我不确定如何在PhpStorm中这样做.在各种配置屏幕中没有任何东西在跳出来.请帮忙.

xdebug symfony phpstorm

5
推荐指数
1
解决办法
1256
查看次数

原则 2 - 一对多单向

有关在原则 2 中创建一对多单向关系的几个问题:

  1. 是否需要连接表?
  2. 文档说“看这个示例”,但我看到的只是生成的模式有人介意制作一个快速示例,以便我可以获得正确的注释吗?

php symfony doctrine-orm

5
推荐指数
1
解决办法
2万
查看次数

Symfony 3.4 - form_errors表单不显示主题

编辑:做一些挖掘,看起来我的问题源于我正在创建的表单建立在FOSUserBundle的注册表单之上.为什么这是一个问题?因为如果表单无效,它们RegistrationController会抛出一个REGISTRATION_FAILURE事件,但事件看起来并不像是一个监听器.因此,除了系统根本不处理之外,无效状态实际上没有做任何事情.它甚至没有返回表单(有错误).

我有一个相对简单的表单主题我想使用,以便在我的表单顶部的块中显示我的表单错误:

{% form_theme form _self %}

{% block form_errors %}
    {% spaceless %}
        {% if errors|length > 0 %}
            <div class="errors pt-2 mb-2">
                <ul>
                    {% for error in errors %}
                        <li>{{ error.message }}</li>
                    {% endfor %}
                </ul>
            </div>
        {% endif %}
    {% endspaceless %}
{% endblock form_errors %}
Run Code Online (Sandbox Code Playgroud)

我在表单模板中引用它:

{% form_theme form 'Form/errors.html.twig' %}
Run Code Online (Sandbox Code Playgroud)

然后我尝试用一​​个简单的方法调用它:

{{ form_errors(form) }}
Run Code Online (Sandbox Code Playgroud)

但是,当我故意向表单输入提供不正确的数据并尝试提交时,不会出现错误div.由于存在6个验证错误,因此提交失败,但HTML源中未显示错误.

看看文档,我认为我做得对,但我显然错过了一些东西.

php forms symfony twig fosuserbundle

5
推荐指数
1
解决办法
460
查看次数

ASP.NET MVC 2+和PRG模式

我刚刚了解了PRG模式的存在,我想知道ASP.NET MVC 2或更高版本是否实现了它.如果没有,是否有相关的示例或教程?我见过一些MVC 1,但我不确定它们是否仍然相关.

asp.net-mvc-3 asp.net-mvc-2

4
推荐指数
1
解决办法
619
查看次数

LINQ Where(谓词)与FirstOrDefault(谓词)

以下两者之间是否存在明显的性能差异:

something.Where(predicate).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

something.FirstOrDefault(predicate);
Run Code Online (Sandbox Code Playgroud)

我倾向于使用两者,但我想知道在性能方面是否有明显的赢家.

linq c#-4.0

4
推荐指数
1
解决办法
835
查看次数

有没有办法创建一个Doctrine 2的实体管理器的模拟器,并在Symfony 2 PHPUnit测试中为它提供一个模拟实体?

我的任务是为遗留代码编写单元测试.我当前的测试是在一个对象上,它将Doctrine 2实体管理器作为构造函数参数.我需要能够提供测试数据,以便我可以可靠地测试其方法.

所以,理想情况下,我希望能够创建一个模拟实体管理器,然后创建一个模拟实体并将其附加到模拟实体管理器,然后在我的测试中使用它.这可能吗?如果是这样,怎么样?

这个项目使用Symfony 2.4+,所以我很确定在设置中增加了一两个皱纹.

php phpunit symfony doctrine-orm

4
推荐指数
1
解决办法
5798
查看次数