php – 如何在Symfony2功能测试中使用经过身份验证的用户?

前端之家收集整理的这篇文章主要介绍了php – 如何在Symfony2功能测试中使用经过身份验证的用户?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用FacebookBundle来验证我的Symfony2应用程序中的用户.但是,我想使用PHPunit创建功能测试,它使用经过身份验证的用户.

此外,我不想使用Facebook用户,而是编码一个.

有人知道如何实现吗?

其实很简单

>安装security.yml用于测试环境(它是Symfony 2.0-RC3的一个片段)

security:
    encoders:
        Symfony\Component\Security\Core\User\User: plaintext

    providers:
        in_memory:
            users:
                user:  { password: userpass,roles: [ 'ROLE_USER' ] }
                admin: { password: adminpass,roles: [ 'ROLE_ADMIN' ] }

    firewalls:
         secured-area:
             pattern:    ^/demo/secured/
             http_basic:
                 realm: "Secured Demo Area"

>您可以看到HTTP身份验证已被定义.所以现在,你所要做的就是在功能测试中设置一个客户端:

$client = static::createClient(array(),array(
    'PHP_AUTH_USER' => 'user','PHP_AUTH_PW'   => 'userpass',));

链接可能有用:http://symfony.com/doc/current/testing.html

猜你在找的PHP相关文章