目的是分别使用为每个特定环境设置的示例。
以下是我的场景特征:在开发环境(仅用于测试)上错误登录 1 次后用户被阻止,在 QA 上错误登录 3 次后用户被阻止
Scenario Outline: Verify if user is blocked after 3 wrong attempts to login
When he attempts to login <retries> times with incorrect password
Then Error Popup should not be displayed
And Error message is displayed: "Your account is blocked"
@dev
Examples:
| retries |
| 1 |
@qa
Examples:
| retries |
| 3 |
我在指定环境下执行测试如下:
gradle clean e2e-test -Denvironment=dev
我看到测试是在
Dev
上执行的,但是在 retries = 1
(通过)之后,它再次重复 retries = 3
,并且仍然在 Dev
如果我在 QA 上执行测试,那么它首先以
retries = 1
开始,然后以 retries = 3
继续,这不是我所期望的。
我认为它会分别识别给定环境的每个示例。但它似乎执行了一个环境的所有示例。
我希望如果我说
env = dev
,那么它应该执行示例retries = 1
,然后停止。质量检查也是如此。我怎样才能实现这个目标?
我缺少另一个属性:
Dcucumber.filter.tags
,以指定我要使用哪个示例。
gradle clean e2e-test -Denvironment=dev -Dcucumber.filter.tags="@dev"