我有一个套件,它有多个类的测试。我需要多次运行此套件(不是并行运行)。换句话说,运行" FirefoxTests"测试300次,或1000次,等等。我知道如何使用junit,但我没有使用我的脚本现已转换为的testng。这是我的xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="SuiteEndToEnd" parallel="false" verbose="10" thread-count="2">
<listeners>
<listener class-name="com.bpms.tests.MySuiteListener"/>
</listeners>
<test name="FirefoxTests">
<parameter name="browser" value="firefox"/>
<classes>
<class name="com.bpms.tests.InitiateBuyPlan"/>
<class name="com.bpms.tests.AddItemsToBuyPlan"/>
<class name="com.bpms.tests.ReviewBuyPlan"/>
<class name="com.bpms.tests.ApproveBuyPlan"/>
<class name="com.bpms.tests.ManageQuoteSolicitation"/>
<class name="com.bpms.tests.StartQuote"/>
<class name="com.bpms.tests.ReviewQuote"/>
<class name="com.bpms.tests.RecordInterestInQuotes"/>
<class name="com.bpms.tests.ReviewCountryBuyIn"/>
<class name="com.bpms.tests.CompleteItemInfo"/>
<class name="com.bpms.tests.ReviewItemInformation"/>
<class name="com.bpms.tests.UpdateInterestInQuote"/>
<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.ClassifyItem"/>
<class name="com.bpms.tests.ApproveItem" />
<class name="com.bpms.tests.ClassifyItem2"/>
<class name="com.bpms.tests.CompleteItemClassification"/>
<class name="com.bpms.tests.ApproveItemClassification"/>
<class name="com.bpms.tests.SubmitLinkToFreightEstimates"/>
<class name="com.bpms.tests.ReviewFreightWorksheet"/>
<class name="com.bpms.tests.ReviewItemInfoAndReviseInterest"/>
<class name="com.bpms.tests.ManageAnalyzedQuotes"/>
<class name="com.bpms.tests.AuthorizeItemDevelopment"/>
<class name="com.bpms.tests.ConsolidateCountryAuthorizations"/>
<class name="com.bpms.tests.FinalizeItemInformationAndGenerateUnsignedItemAgreementPDF"/>
<class name="com.bpms.tests.VerifyAndUploadItemDocuments"/>
<class name="com.bpms.tests.AttachDocsForApproval"/>
<class name="com.bpms.tests.FinalizeItemForApproval"/>
<class name="com.bpms.tests.ApproveItemGMM"/>
<class name="com.bpms.tests.ConsolidateInCountryAGMM_GMMResponses"/>
<class name="com.bpms.tests.InitiateCodeOfConductForFactory"/>
<class name="com.bpms.tests.SubmitAuditResultsForFactory"/>
<class name="com.bpms.tests.ConfirmItemSetupAndPOsIssued"/>
<class name="com.bpms.tests.VerifyReceiptsOfPOs"/>
<class name="com.bpms.tests.ConfirmReceiptOfPOs"/>
<class name="com.bpms.tests.ReviewQAProductionTestResults"/>
<class name="com.bpms.tests.CompleteProjectChecklist"/>
<class name="com.bpms.tests.VerifySupplierCodeOfConductForFactory"/>
<class name="com.bpms.tests.VerifyChainSecurityForFactory"/>
</classes>
</test> <!-- FirefoxTests -->
</suite> <!-- SuiteEndToEnd -->
答案 0 :(得分:0)
没有直接来自xml的方法,但只有一种方法可以简单地完成,而不需要花费太多精力就可以为ITestListener编写实现
在onStart方法中,您可以为测试中的所有方法设置调用计数。 例如。
public void onStart(ITestContext context) {
if(context.getName().equals("FFTests")) {
for(ITestNGMethod met : context.getAllTestMethods()){
met.setInvocationCount(200);
}
}
}
如果需要在套件级别完成相同的操作,那么同样实现IsuiteListener onStart方法。