我一直在寻找这个答案已经有一段时间了,但目前还无法确定。
说我有一个测试环境和一个生产环境。我创建了瓢虫场景,无论是在测试还是在产品上运行,都必须有所不同。我所有的方案都写在/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/