我一直在寻找这个答案已经有一段时间了,但目前还无法确定。

说我有一个测试环境和一个生产环境。我创建了瓢虫场景,无论是在测试还是在产品上运行,都必须有所不同。我所有的方案都写在/feature/xxx.feature中

问题是,当我运行测试时,所有* .feature都将运行。因此,我创建了一个环境变量,根据要在其上运行测试的环境进行更改。

如何定位正确的.feature文件?如何告诉Calabash:当环境变量设置为“生产”时,请仅运行/feature/prodution/.feature文件?*

非常感谢您的帮助!

最佳答案

这确实是一个黄瓜问题。

我建议使用标签。以下示例适用于iOS,但原理适用于Android。

https://github.com/cucumber/cucumber/wiki/Tags

您可以在Calabash iOS Smoke Test App.中查看我们如何使用标签

# Run the animation tests
$ bundle exec cucumber -t @animations

# Run the backdoor tests
$ bundle exec cucumber -t @backdoor


您可以将标签与黄瓜配置文件结合使用以实现更高级的行为。

 # Run the backdoor tests in the production environment
 $ bundle exec -p production -t @backdoor



Cucumber profiles
Cucumber profiles for iOS Simulators and Devices
Cucumber profiles for the Xamarin Test Cloud

关于android - 如何定位特定的Calabash功能文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33633221/

10-13 03:03