需要通过Main.class运行suite.xml

时间:2019-06-19 13:51:17

标签: java testng

注意:我找到了解决方案。我已经将Main.class从src / main / java移到了所有测试类所在的src / test / java。 但是,如何引用不同文件夹(src和test)中的类?

我想通过Main.class运行我的测试套件(.xml)。我可以通过右键单击eclipse中的.xml并选择“运行方式-> TestNG”来直接运行它,但是当我尝试通过main运行它时,将抛出错误“在类路径中找不到类:app.tva.tests.LoginTest”

这就是我的Main.class上的内容:

TestNG testng = new TestNG();
    List<String> suites = Lists.newArrayList();
    suites.add("SuitesTest\\TVASuite.xml");
    testng.setTestSuites(suites);
    testng.run();

这就是我的xml里面的内容:

<suite name="TVA Suite">
<parameter name="app" value="tva" />
<listeners>
    <listener class-name="app.common.listeners.TestListener" />
    <listener class-name="app.common.listeners.AnnotationTransformer"/>
</listeners>
<test name="TVA Test">
    <classes>
        <class name="app.tva.tests.LoginTest" />
    </classes>
</test>

1 个答案:

答案 0 :(得分:0)

尝试类似

    List<String> testFilesList = new ArrayList<String>();
    testFilesList.add("./testng.xml"); //test suite resides in the working directory's root folder
    **testng.setTestSuites(testFilesList);** //you can addd multiple suites either here by adding multiple files or include all suites needed in the testng.xml file 
    testng.setUseDefaultListeners(false);
    testng.addListener(htmlRep); 
    testng.run();