Symfonyob娱乐下载 5.1中的新功能:在测试中更简单的登录
2020年3月23日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony版本。ob娱乐下载有些信息可能已经过时了。阅读最新的Symfony文档ob娱乐下载.
在功能测试在美国,测试受保护页面需要以用户身份登录。重现实际的登录过程(例如,在登录表单中输入用户名和密码并提交)会使测试变慢。ob娱乐下载Symfony的建议这个技巧作为一个更快的选择,但它可能不符合您的需求。
这就是为什么在Symfonyob娱乐下载 5.1中我们添加了一个新的loginUser ()
方法在测试中模拟完整用户登录。通过用户界面
你想登录的用户的对象,就是这样:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
/ /测试/控制器/ ProfileControllerTest.php名称空间应用程序\测试\控制器;使用应用程序\存储库\UserRepository;使用ob娱乐下载\包\FrameworkBundle\测试\WebTestCase;类ProfileControllerTest扩展WebTestCase{/ /……公共函数testVisitingWhileLoggedIn(){$客户端=静态::createClient ();//以某种方式获取或创建用户(例如只创建一些用户)//在加载测试夹具时加载测试)$userRepository=静态:: $容器->get (UserRepository::类);$testUser=$userRepository->findOneByEmail (“jane.doe@example.com”);$客户端->loginUser ($testUser);//用户现在已经登录,因此可以测试受保护的资源$客户端->请求(“得到”,“/配置文件”);$这->assertResponseIsSuccessful ();$这->assertSelectorTextContains (“标题”,“你好,用户名!”);}}
发表在#生活在边缘
评论
丹尼尔Hernández瓦雷拉
2020年4月15日说原因在21:24
这是魔法!谢谢
评论截止。
为了确保评论保持相关性,旧帖子将被关闭。
Sylvain Deloux is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now