【发布时间】:2020-08-08 01:19:54
【问题描述】:
我正在使用 Selenium、Maven 和 Java 构建一个 Gauge 自动化项目。使用包含的表数据(如
)执行规范时# Specification
| name |
| A |
| B |
| C |
## Scenario 1
* User logs in application
## Scenario 2
* User does something for product <name>
单线程运行:
mvn clean install
Output:
Scenario 1
Scenario 2 for name A
Scenario 2 for name B
Scenario 2 for name C
然后它移动到下一个规范。 但是,当在 2 个节点上并行运行相同规范时,Gauge 的行为会有所不同:
mvn clean install -DinParallel=true -Dnodes=2
Output:
Browser 1: Scenario 1
Browser 2: Scenario 2 for name A
Browser 1: Scenario 2 for name B
Browser 2: Scenario 2 for name C
您可以立即看到来自Browser 2 的场景不会成功,因为来自Scenario 1 的“前提条件”没有运行。
有没有办法在规范级别并行化 Gauge?
注意:我知道将场景重写为自包含是一种方法,但这些测试会变得非常长、非常快并且会增加运行时间。
【问题讨论】:
-
gauge 只能并行运行规范,并且期望场景是独立的。您可以将登录步骤作为上下文步骤移动,这也具有语义意义。
标签: ui-automation browser-automation getgauge