我有一个包含10个类的testNG.xml文件,但是我有一个包含4个类的列表。我只需要比较并执行列表中的4个测试用例,而不是执行testNg.xml中的所有10个用例。可能吗 ?给我一些想法,如何跳过testNG.xml中的6个类
最佳答案
根据要求,以下是通过excel数据创建testng.xml的简单方法。
让我们假设在excel文件的工作表0中,我将编写状态为Y / N的所有类表示是否可以执行。因此工作表中的第一行(i = 0)只是在单元格0中具有标头作为测试用例,而在单元格1中具有标头。
如果来自i的任何行的单元格1 = 1,但对于具有可执行为Y的类,则我需要将该类添加到我的测试中,然后将该测试添加到我的套件中,最后需要执行此套件。
// TODO Auto-generated method stub
XmlSuite suite = new XmlSuite();
suite.setName("TmpSuite");
XmlTest test = new XmlTest(suite);
test.setName("TmpTest");
List<XmlClass> classes = new ArrayList<XmlClass>();
List<XmlSuite> suites = new ArrayList<XmlSuite>();
FileInputStream file=new FileInputStream(new File("D:\\TestCases.xlsx"));
XSSFWorkbook workbook=new XSSFWorkbook(file);
XSSFSheet sheet=workbook.getSheetAt(0);
for(int i=1; i<sheet.getPhysicalNumberOfRows(); i++){
if(sheet.getRow(i).getCell(1).getStringCellValue().equals("Y")){
classes.add(new XmlClass(sheet.getRow(i).getCell(0).getStringCellValue()));
}
}
test.setXmlClasses(classes) ;
suites.add(suite);
TestNG tng = new TestNG();
tng.setXmlSuites(suites);
tng.run();