私は次の問題を抱えています。ジェンキンスですべてのテストを実行していますが、現在持っている22のテストのうち10の失敗のようになっています。これらのテストは、その結果を報告するために Testlink にリンクされています。
これらのテストを個別に実行すると、失敗するか合格するかのいずれかで完全に実行されますが、2つの異なるクラスを実行すると。これが問題の始まりです。ビルドプランが見つからないために失敗するテストケースもあります。つまり、結果を報告するテストケースが見つからないということです。そして、それらを個別に実行したため、それらを渡すパラメーターが正しいことを100%確信しています。
testng.xml とその形式の例を次に示します。
<parameter name="nombrePlan" value="test1" />
<parameter name="nombreBuild" value="test1build" />
<parameter name="nomTL_1" value="1"/>
<parameter name="nomTL_2" value="2"/>
<parameter name="nomTL_3" value="3"/>
<test name="Test1">
<classes>
<class name="com.example.testClass1">
<methods>
<include name ="test1" />
<include name ="test2" />
<include name ="test3" />
</methods>
</class>
</classes>
</test>
<parameter name="nombrePlan" value="test2" />
<parameter name="nombreBuild" value="test2build" />
<parameter name="nomTL_4" value="4" />
<parameter name="nomTL_5" value="5" />
<parameter name="nomTL_6" value="6" />
<parameter name="nomTL_7" value="7"/>
<parameter name="nomTL_8" value="8"/>
<test name="test2">
<classes>
<class
name="com.example.testClass2">
<methods>
<include name="test4" />
<include name="test5" />
<include name="test6" />
<include name="test7"/>
<include name="test8"/>
</methods>
</class>
</classes>
</test>
これはテストの例です:
@Parameters({"nombrePlan", "nombreBuild", "nomTL_1"})
@Test
public void checkMenuElements (String nombrePlan, String nombreBuild, String nomTL_1) throws Exception {
String resultado = null;
String nota = null;
try {
Class abc = new Class(driver);
abc.navigateToAbc();
Test test1 = new Test(driver);
test1.checkMenuElements();
resultado = TestLinkAPIResults.TEST_PASSED;
}catch(AssertionError a){
resultado = TestLinkAPIResults.TEST_FAILED;
nota = a.getMessage();
}catch (Exception e) {
resultado = TestLinkAPIResults.TEST_FAILED;
nota = e.getMessage();
}
finally {
ResultadoExecucao.reportTestCaseResult(PROJETO, nombrePlan, nomTL_1, nombreBuild, nota, resultado);
}
}
どんな助けでも大歓迎です。