美文网首页
Appium 多用例管理

Appium 多用例管理

作者: 长新 | 来源:发表于2017-08-06 16:38 被阅读96次

实际应用中我们常是一个业务流会串入很多测试用例,便于管理,这里的业务流我们可以称为一个测试场景,

在我的代码中一个业务流为一个测试套件

一个套件可能是一条用例,也有可能是多条用例,套件和用例存在的关系是一对多,且有先后顺序

比如上面的产品购买套件  先是选中产品,加入购物车,再是删除订单 退出登录

这里的思路也可以像用例读操作一样,

一行行读取,直到读取对应的套件名称,再转到第二列,读取对应的测试用例,找到用例再到用例对应的Excel 文件读取该用例对应的Sheet 名称

具体实现代码

/**

* 执行指定的测试套件

* @param SuiteName  测试套件名称

* @throws IOException

* @throws InterruptedException

*/

public static void TestSuite(String SuiteName) throws IOException, InterruptedException {

//设置数据路径

try {

String TestSuite=constant.TestSuite;

System.out.println("测试套件的路径"+TestSuite);

//实例化文件流

FileInputStream ExcelFile = new FileInputStream(TestSuite);

// 实例化工作本

XSSFWorkbook  ExcelWBook = new XSSFWorkbook(ExcelFile);

//实例化Sheet 名

//获取测试套件的Sheet ,如果此处ExcelWsheet 为null可能是不存在测试套件的Sheet

XSSFSheet ExcelWSheet = ExcelWBook.getSheet("测试套件");

//循环扁历整个测试套件的行号

for (int i=1;i<=ExcelWSheet.getLastRowNum();i++){

//按行取出测试套件的名称

String TestSuiteName=ExcelWSheet.getRow(i).getCell(0).getStringCellValue().trim();

// 如果按行读取到的测试套件与测试任务调度中的 测试套件的运行模式==yes 相同

if (TestSuiteName.equals(SuiteName)){

//取出对应测试套件的用例名称和测试数据索引 (这里的数据索引主要是指示代码取测试数据中哪一行数据)

String TestCaseName=ExcelWSheet.getRow(i).getCell(1).getStringCellValue().trim();

String TestCaseData=ExcelWSheet.getRow(i).getCell(2).getStringCellValue().trim();

//依据测试套件的内容去调用相应的测试用例

System.out.println("测试用例名称是"+TestCaseName+"测试数据指针是"+TestCaseData);

// 到这里我们就已得到 需要执行哪个测试用例,测试用例参数化时取哪一行的值

TestCase(TestCaseName,TestCaseData);

}

}

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

相关文章

网友评论

      本文标题:Appium 多用例管理

      本文链接:https://www.haomeiwen.com/subject/qhfnlxtx.html