3

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

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

4

3 回答 3

4

每次测试都必须登录既耗时又低效。如果:

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

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

于 2018-02-19T02:33:31.353 回答
3

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

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

于 2018-03-06T07:46:23.337 回答
2

这取决于您要测试的内容:

  1. 如果您正在测试身份验证,那么他们应该每次都登录。
  2. 如果您正在测试其他内容,那么我会将其放置在Arrange Act Assert模式之后的代码的 Arrange 部分中,因为它与其他测试无关,并且作为测试设置 (Arrange) 的一部分,它应该导航回主页. 理想情况下,您将身份验证与其他性能测试隔离开来,但是如果您的会话具有从上次测试中继承的某些状态,您应该清理它,以便其他测试不受它的影响。
    1. Git 问题中的一条评论建议您可以使用preserveUrl来保持会话。
于 2018-02-19T08:23:33.170 回答