zoukankan      html  css  js  c++  java
  • testNG中dataprovider使用的两种方式

    testNG的参数化测试有两种方式:xml和dataprovider.个人更喜欢dataprovider,因为我喜欢把测试数据放在数据库里。

    一.返回类型是Iterator<Object[]>,不用管有多少组测试数据,可以抽取出来以map的id为参数作为公用的提取数据方法。

    @DataProvider(name="loginData")
    private Iterator<Object[]> LoginDataProvider() throws IOException {
    List<Object[]> result=new ArrayList<Object[]>();
    SqlSession session=DatabaseUtil.getSqlSession();
    List<Object> alldata=session.selectList("loginTestAll");
    Iterator it=alldata.iterator();
    while(it.hasNext()){
    result.add(new Object[] { it.next() });
    }
    return result.iterator();
    
    }

    二.返回类型是Object[][],明确知道有几组测试数据

    @DataProvider(name="loginData")
    
    private Object[][] LoginDataProvider() throws IOException {
    Object[][] result=null;
    SqlSession session=DatabaseUtil.getSqlSession();
    result=new Object[][]{{session.selectOne("loginTest",1)},{session.selectOne("loginTest",2)}};
    return result;
    }

    测试调用

    @Test(groups="login",dataProvider = "loginData")
    
    public void loginTestCase(LoginTest loginTest) throws IOException {
    //用测试数据发起请求,获取响应
    String response=getResult(loginTest);
    
    //响应断言
    JSONObject rj=new JSONObject(response);
    String code=rj.getInt("code")+"";
    Assert.assertEquals(code,loginTest.getExpected());
    
    }
    

    来源:CSDN
    原文:https://blog.csdn.net/wangjie0925/article/details/80653935

  • 相关阅读:
    Pyhton学习——Day60
    Pyhton学习——Day58
    Python——微信数据分析
    C/C++文件指针偏移
    I/O流+统计文件词频
    vector概念
    new/delete工作机制
    Singleton单例类模式
    对象数组
    特殊成员函数
  • 原文地址:https://www.cnblogs.com/AryaZ/p/9840372.html
Copyright © 2011-2022 走看看