1

我有一个基于记录用户的应用程序,FOSOAuthServerBundle我想在这个应用程序中测试操作。

所以...在 Sf2 中是用于测试环境的特殊配置文件,config_test.yml我放了这段代码:

security:
    firewalls:
        default:
            anonymous: ~

理论上它应该可以解决我的问题,因为这个防火墙允许任何人访问任何操作。我已经把它放进去config_test.yml,所以它应该只有在我测试应用程序时才能工作。很好的解决方案,我在想。

但是 Sf 抛出了这个错误:

不允许为路径“security.firewalls”定义新元素。请在一个配置文件中定义此路径的所有元素。

我的问题是: 在 PHPUnit 测试应用程序时,如何在不记录的情况下允许访问操作?

4

1 回答 1

2

您不能添加/定义新元素,但可以修改它们。

相反config_test.yml,默认防火墙使用您在security.yml.

更好的是使用它http_basic: ~anonymous: ~这样您的测试就可以像真正的经过身份验证的用户一样运行。

不错的食谱在这里:http ://symfony.com/doc/2.8/cookbook/testing/http_authentication.html

于 2016-02-23T14:46:05.323 回答