2018-11-19UI自动化&参数化

一、java学习 idea 实时代码模板

  • idea实时代码模板
  • 创建模板组,模板
    https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620504_9.gif
  • 通过关键字调用模
    https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620512_25.gif
  • 实时代码及idea其他模板导出
  • 实时代码及idea其他模板导出

一、参数化

  • dataProvider(配合使用csv做批量数据参数化)

1.通过@dataProvider (name="数据集合名称") 注解提供数据集合

  //通过@DataProvider(name=""数据集名称) 注解方法提供数据
  public static Object[][] resul() {
    // 提供数据 一种读取CSV文件 返回 二维数组
    //读取二维数组保存至data数组变量中
    Object[][] resul = readCSV("src/main/resources/csvData/queryrealname.csv");
    return resul; //相对路径从src开始
2018-11-19UI自动化&参数化_第1张图片
image.png

2.通过@Test (dataProvider="数据集合名称")

  //通过 @Text(dataProvider="数据集名称关联配对")
  public void query(String userName,String userNam,String password) {
    driver.get("http://47.98.226.232:8080/guoya-medium/jsp/user/login.jsp");
    driver.findElement(By.xpath("//input[@name='userName']")).sendKeys(userNam);
    driver.findElement(By.xpath("//input[@name='password']")).sendKeys(password);
    driver.findElement(By.xpath("//input[@id='checkCode']")).sendKeys("1234");
    driver.findElement(By.xpath("//input[@id='loginBtn']")).click();
    driver.findElement(By.name("realName")).sendKeys(userName);
    driver.findElement(By.xpath("//input[@value='查询']")).click();

  }
  • @dataProvider参数化注解
    https://www.tapd.cn/tfl/pictures/201811/tapd_63882484_1542620450_45.gif
  • paremeters

1.数据与脚本做分离
2.通过@paremeter注解传参

  @Parameters({"url","username","password","realname"})//通过@Parameters 添加参数
  public void Parameter(String url, String username,String password,String realname){
    //"http://47.98.226.232:8080/guoya-medium/jsp/user/login.jsp"
    driver.get(url);
    driver.findElement(By.xpath("//input[@name='userName']")).sendKeys(username);
    driver.findElement(By.xpath("//input[@name='password']")).sendKeys(password);
    driver.findElement(By.xpath("//input[@id='checkCode']")).sendKeys("1234");
    driver.findElement(By.xpath("//input[@id='loginBtn']")).click();
    driver.findElement(By.name("realName")).clear();
    driver.findElement(By.name("realName")).sendKeys(realname);
    driver.findElement(By.xpath("//input[@value='查询']")).click();
  }

3.通过xml配置执行脚本




        
            
            
            
            
            
            

    
    
        
        
            
            
                
                

            
        
    


二、live template(活动模板)

关键字编程
提前写好代码封装
通过自定义关键字调用生成代码块

三方法

无参方法
带入参的方法
带返回的方法

思维导图:
2018-11-19UI自动化&参数化_第2张图片
day25UI自动化.png

你可能感兴趣的:(2018-11-19UI自动化&参数化)