如何在testng的单个套件中多次运行测试类

时间:2014-12-16 22:46:12

标签: java eclipse selenium-webdriver testng

我在testng中为selenium设置了套件。该套件包含两次相同的测试类,因为在两次修改之间必须运行该类两次。我遇到的问题是testng只运行类的第一次出现,而不是第二次出现。有没有办法让它在同一个套件中运行两次?

<suite name="P0-SuiteLoopbackGenerateUnsignedItemAgreementToNLC" parallel="false" verbose="10">
    <listeners>
        <listener class-name="com.bpms.tests.MySuiteListener"/>
    </listeners>
    <test name="FirefoxTest">
        <parameter name="browser" value="firefox"/>
        <parameter name="debug" value="true"/>
        <classes>
            <class name="com.bpms.tests.PerformLogisticsAnalysis"/>
            <class name="com.bpms.tests.SecondReview"/>
            <class name="com.bpms.tests.ReviewNLCDiagrams"/>
            <class name="com.bpms.tests.ConfirmItemSpecifications"/>
            <class name="com.bpms.tests.LoopbackGenerateUnsignedItemAgreementToNLC"/>
            <class name="com.bpms.tests.DetermineLoopbackToNLC"/>
            <class name="com.bpms.tests.PerformLogisticsAnalysisAfterLoopback"/>
            <class name="com.bpms.tests.SecondReview"/>
            <class name="com.bpms.tests.ReviewNLCDiagrams"/>
            <class name="com.bpms.tests.ConsolidateCountryAuthorizations"/>
            <class name="com.bpms.tests.FinalizeItemInformationAndGenerateUnsignedItemAgreementPDF"/>
            <class name="com.bpms.tests.VerifyAndUploadItemDocuments"/>
        </classes>
    </test>
</suite>

运行此套件会导致跳过第二个“SecondReview和ReviewNLCDiagrams”。我需要这些第二次运行。有办法吗?

1 个答案:

答案 0 :(得分:0)

问题是TestNG被设计为不允许xml中的重复类。根据这些建议,我不得不创建新的类(虚拟类),除了扩展真正的类之外什么都不做。解决了这个问题。