美文网首页
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