我想将我的验收测试打包到一个可执行的JAR中,其中包含所有必需的库,用于运行测试和生成报告。我也想要运行所有测试或单个测试。
到目前为止,我能够运行所有测试,虽然报告是在serenity.properties中指定的位置生成的,但是没有生成index.html。
通常情况下,我会使用maven验证目标运行我的测试,这会运行serenity-maven-plugin,但由于我是从JAR运行的,所以我不确定如何实现同样的目的。
我有一个主要类,如下所示:
Feature: Lookup a definition
@TEST-0001
Scenario: Looking up the definition of 'apple'
Given the user is on the Wikionary home page
When the user looks up the definition of the word 'apple'
Then they should see the definition 'A common, round fruit produced by the tree Malus domestica, cultivated in temperate climates.'
@TEST-0002
Scenario: Looking up the definition of 'pear'
Given the user is on the Wikionary home page
When the user looks up the definition of the word 'pear'
Then they should see the definition 'An edible fruit produced by the pear tree, similar to an apple but elongated towards the stem.'
我的功能文件使用标签,以便我可以指定运行的单个方案:
java -jar my-test-jar.jar -Dcucumber.options="--tags @TEST-0001"
我希望有一种方法可以将JVM args与可执行JAR一起使用,以某种方式允许我设置黄瓜选项。我尝试过这样的事情:
{{1}}
......但仍然可以运行所有测试。
非常感谢任何想法。
答案 0 :(得分:3)
构造命令的方式可能不正确。黄瓜选项被视为com.cfhayes.test.DefinitionTestSuite::main
的参数而不是java选项。试试这个:
java -Dcucumber.options="--tags @TEST-0001" -jar my-test-jar.jar
或者在你的班级处理黄瓜选项。