0

私は次の問題を抱えています。ジェンキンスですべてのテストを実行していますが、現在持っている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);
    }   
}

どんな助けでも大歓迎です。

4

0 に答える 0