我有2个截然不同的Behat个人资料:
simple:
suites:
default:
contexts:
- rdx\behatvars\BehatVariablesContext
- SimpleFeatureContext
extensions:
rdx\behatvars\BehatVariablesExtension: ~
proxy:
suites:
default:
contexts:
- ProxyFeatureContext
simple
加载一个本地上下文,proxy
加载另一个。 simple
必须有扩展名,proxy
一定不能。
组合起来,他们运行的测试应该完全通过。目前,这是我的run-tests
脚本:
vendor/bin/behat --profile=proxy --format-settings='{"paths":false}' features/proxy.feature &&
echo &&
vendor/bin/behat --profile=simple --format-settings='{"paths":false}' features/simple.feature
它不仅难看,而且不能正常工作。 &&
确保将正确的结果传递给run-tests
调用者,但它们也意味着如果第一次测试失败,则不会运行第二次测试。
我如何保持两者:
1
,如果有失败)我不想让run-tests
更复杂,所以这比Bash更像是一个Behat问题。我可以告诉Behat运行具有不同功能的2个配置文件并返回合并结果吗?
答案 0 :(得分:0)
也许是这样的事情?
result=0
cmds1 || result=$?
echo
cmds2 || result=$?
exit $result
如果其中一个命令失败,则失败的退出代码将传播给调用者。 (如果两者都失败,则最后一次失败是我们传回给调用者的失败。)当测试成功时,我们不会触及result
变量。如果两者都成功,则保持为零(成功)。