java - Java 与 Cucumber 场景顺序
问题描述
我正在做一个自动化项目。
我的第一个场景是登录功能。我在 SaaS 上工作,我需要先登录。
所以我在考虑第一个 login.feature 场景和填写表单的第二个场景。
我有两个文件:
登录功能
fill_form.feature
我启动我的测试
mvn clean test -Dcucumber.options="--tags @login,@form"
所以它打开了两个窗口,但执行没有按预期工作:它同时启动了两个场景。
为了让它工作,我只需要制作一个功能文件,但这不是我想要的架构。
欢迎提出建议!
谢谢
解决方案
您的方法是正确的(您不希望代码重复),但您应该重用步骤而不是重用功能文件。您在这里有两个选择:
- 背景
您可以指定应在功能文件中的所有场景之前调用哪个步骤。例如:
Background:
given I logged in
Scenario: Fill a form
then I filled a form
Scenario: Some other scenario
then "here is some work for other scenario"
- 从步骤定义调用步骤
创建一个调用其他的步骤定义。在您的情况下,这意味着创建一个填写表单步骤,该步骤将在开始时登录。
推荐阅读
- c# - 是否可以在一个实体中拥有多个具有相同基类 (TPH) 的实体的集合属性?
- vb.net - 无法在 VB.net 中读取 CSV 文件的最后一条记录
- vb.net - 创建、更新、删除中的 DNN DAL2 错误...正常工作
- html - 为什么我在引导表单中看不到图标信封
- beagleboneblack - BeagleBone Black (v4.14) 上的 PWM 芯片到引脚映射
- java - 使用网络服务发现在 android 和 java 服务器之间建立连接
- javascript - document.elementFromPoint.click 不起作用 chrome 控制台
- memory - 好友内存分配
- authorization - 向 OpenID 连接添加授权
- arangodb - 当只需要某个键值时,ArangoDB 是否需要将整个文档加载到内存中?