为了避免多次重复测试相同的登录功能,集成测试应该绕过登录自然过程

问题描述 投票:0回答:2

假设我正在测试Web服务,并且有两种情况需要对用户进行身份验证:

Scenario #1: Customer sign-up

Scenario #2: Customer sign-in

Scenario #3: Customer change name

Scenario #4: Customer update image

应该所有测试都通过所有登录步骤,例如:

1) Go to register page
2) Enter new user information
3) Activate account
4) Go to login page
5) Enter login and password
6) Press the Login button
7) Check if I authenticated as a customer

或者我可以只测试一次并实现可快速创建用户并登录的端点。

因此,如果我有那种端点,这意味着我可以一直跳过重新测试相同的事情,而只是在#3和#4实施的短场景中进行。但是在这种情况下,我的环境不太自然。

请告诉我您在实际项目中使用的最佳做法

testing bdd qa scenarios
2个回答
0
投票

一些最佳做法:

  • 使用测试金字塔 [C0
  • integration(UI上的测试要慢得多,仅在UI中自动完成覆盖主流程的必要操作)
  • 对于UI,使用快速方法进行设置(因此,是,Web服务,仅测试一次登录)
  • [如果可能,请通过构建保留一些测试数据(例如,确保可能更改数据结构的新构建不会影响基本功能,例如登录)
  • 测试应该是原子的(彼此不依赖)
  • 不时进行一些清理以除去重复的测试代码并改善框架(速度,稳定性)

0
投票

您不应该将“登录”方案复制并粘贴到所有其他方案,但是要拥有一个帐户并要登录,是其他用例的先决条件。从行为驱动的开发角度来看,这将转换为一个或多个模拟或实际执行这些步骤的ui步骤:

Given
© www.soinside.com 2019 - 2024. All rights reserved.