testing - 如何使用 Gauge 定义运行一次上下文步骤?

标签 testing bdd getgauge

使用 Gauge我们可以使用 Context Steps 在每个场景之前重复一组步骤紧跟在测试规范标题之后。例如:

Delete project
==============
* User log in as "mike"

Delete single project
---------------------
* Delete the "example" project
* Ensure "example" project has been deleted

Delete multiple projects
------------------------
* Delete all the projects in the list
* Ensure project list is empty

在上面的 Delete Project 测试规范中,上下文步骤User log in as "mike" 将被执行两次,两个 detete 场景各执行一次。

如何定义在测试规范的所有场景之前运行一次的步骤?

最佳答案

由于您不能让它通过规范文件运行一次,解决方法可能是使用套件商店。

public void loginAsMike(){
  if((boolean) DataStoreFactory.getSuiteDataStore().get('loggedIn')){
      //execute steps
      DataStoreFactory.getSuiteDataStore().put('loggedIn', true);
  }
}

这样它只会运行一次。这里唯一的问题是您是否要并行运行多个测试。但是,如果您只在一个规范文件中以 mike 身份登录,那么这是一个很好的解决方案。

关于testing - 如何使用 Gauge 定义运行一次上下文步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48574514/

相关文章:

java - cucumber - 如何将预期失败标记为已知问题?

java - 不支持的仪表版本 : This veuge Inrsion of Gatellij plugin only works with Gauge version >= 0. 9.0,规范文件步骤显示未实现

java - 如何在XML报告中显示Gauge消息?

java - 在java中为枚举添加别名

java - 我如何制作一个列表,其中包含所有给定 xpath 的元素?

java - Mockito 验证方法调用一次

ios - TeamCity + Xcode 6 - 运行测试操作失败

node.js - 在风 sails 测试中加载固定装置

unit-testing - 用于 BDD 单元测试的 cucumber.js?

node.js - 当我在 node.js 中使用誓言时出现奇怪的错误