端到端测试应该每次都运行登录设置吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了端到端测试应该每次都运行登录设置吗?相关的知识,希望对你有一定的参考价值。

我正在测试一个使用testcafe进行端到端测试的平台。我有一个测试登录的案例,但我还有其他需要登录的案例。

我不确定什么是我应该在每个测试用例设置上运行登录的最佳选项,或者应该首先运行脚本登录然后运行所有测试?我试过了两个,他们似乎很好的选择。

答案

必须登录每个测试都是耗时且低效的。如果是,我建议单次登录测试;

  • 登录用户与正在运行的测试之间没有依赖关系。
  • 只需一次登录即可实现您所寻找的实际结果

此外,我会使用2-3个用户进行测试,以覆盖多个用户登录系统。

另一答案

TestCafe具有强大的Roles机制,可用于测试登录/注销功能。您可以为要测试的每个用户帐户创建角色,并在测试中切换它们。要切换到未注册的用户,您可以使用Role.anonymous()

使用Roles的主要好处是在第一次使用Role时只执行一次记录步骤,下次TestCafe只需重新加载页面并恢复所需的凭据。

另一答案

这取决于你测试的内容:

  1. 如果您正在测试身份验证,那么他们应该每次登录。
  2. 如果您正在测试其他内容,那么我会将其放在Arrange Act Assert模式之后的代码的Arrange部分中,因为它与其他测试无关,并且作为测试设置(Arrange)的一部分,它应该导航回主页。理想情况下,您将身份验证与其他性能测试隔离开来,但是如果您的会话具有从上次测试中继承的状态,则应该清除它,以便其他测试不受其影响。 A comment in the Git issue建议你可以使用preserveUrl来保持你的会话。

以上是关于端到端测试应该每次都运行登录设置吗?的主要内容,如果未能解决你的问题,请参考以下文章

端到端测试,protractor测试的教程

端到端测试中遗留应用程序的代码覆盖率

端到端测试框架建议

分层测试:端到端测试

vue-cli 脚手架基于Nightwatch的端到端测试环境的过程

在VSTS上发布释放触发器,以运行端到端测试套件