【问题标题】:getting Test input to test service layer CRUD operations获取测试输入以测试服务层 CRUD 操作
【发布时间】:2014-08-28 02:41:31
【问题描述】:

我有一个服务层,其中包含将数据插入数据库、更新数据和从数据库删除数据的方法,它调用 DAO 层来定义这些方法。在客户端包中,我有一个测试类,用于获取调用服务层的操作的用户输入。

我的服务类如下所示:

public class Service extends AbstractService {
        public void createEmp(Emp emp) {
            EmpDAO empDao = new EmpDAO();
            empDao.insertEmp(emp);
        } 
        public int updateEmp(int empId, Emp emp) {
            EmpDAO empDao = new EmpDAO();
            int rows_affected = empDao.updateEmp(empId, emp);
            return rows_affected;
        }
        public int deleteEmp(int empId) {
            EmpDAO empDao = new EmpDAO();
            int rows_affected = empDao.deleteEmp(empId);
            return rows_affected;
        }
}

测试类如下:

public class Application {

    public void insertData(){
        Emp em = new Emp();
        Service service = new Service();

        //insert data into Employee table  
        em.setEmpName("aaaaaa");
        em.setDeptId(2);
        service.createEmp(em); 
    }
    public void updateData(){
        // update employee
        em.setDeptId(2);
        .....
        service.updateEmp(2,em);
        .....           
    }
    public void deleteData()
        //Delete data from Employee table
        service.deleteEmp(2);

    }
}

现在我想编写一个测试类来使用 TestNG 测试我的方法。我不知道如何使用@DataProvider 为插入操作提供输入,以便通过更多输入调用它一次。

【问题讨论】:

    标签: testng dao service-layer testng-dataprovider


    【解决方案1】:

    这里有 2 个方法为您的 insertData 方法提供示例,使用 @DataProvider

    @DataProvider(name = "test2")
    public static Object[][] insertTestData() {
        return new Object[][] {{"aaaaaa", 2}, {"other", 3}};
    }
    
    @Test(dataProvider = "test2")
    public void insertData(String empName, Integer deptId){
        Emp em = new Emp();
        Service service = new Service();
    
        //insert data into Employee table  
        em.setEmpName("aaaaaa");
        em.setDeptId(2);
        service.createEmp(em); 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-01
      • 2015-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多