1.对于数组的调用和传参这些是进行自动化测试的一些基本理解,能够极大的简化我们的测试流程,例如进行登录测试时,如果需要进行多个网站测试,那么这时候使用二维数组进行测试,对于测试代码的简化起到了很大作用,每个东西只要用对了地方都能够带给我们一些便捷的,以下是我自己写的代码,欢迎指导:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public  void  testlogin1() {
         //xxx代表需要传入数组的参数
         String[][] nature={{xxx},{xxx}};
         for ( int  i= 0 ;i< 12 ;i++){
             try {
             String string=nature[i][ 0 ];
             String a=nature[i][ 1 ];
             String b=nature[i][ 2 ];
//            for(int j=0;j<5;j++){
             //driver.navigate().to(nature[i][j]);
             System.out.println(nature[i]);
             driver.get(string);
             driver.manage().window().maximize();
             driver.manage().timeouts().pageLoadTimeout( 2000 ,TimeUnit.SECONDS );
             driver.findElement(By.xpath( "//*[@id='head_login_register']/a" )).click();//点击登录按钮
             Thread.sleep( 3000 ); //等待3秒,以便于url获取准确
             assertEquals(a,driver.getCurrentUrl()); //断言进行判断是否准确
             //判断文本框是否可以编辑,可以则返回true
             if (driver.findElement(By.name( "login_email" )).isEnabled()){
                 driver.manage().timeouts().implicitlyWait( 10 , TimeUnit.SECONDS);
                 driver.findElement(By.name( "login_email" )).clear();
                 driver.findElement(By.name( "login_email" )).sendKeys( "112233@gmail.com" );
                 driver.findElement(By.name( "login_password" )).clear();
                 driver.findElement(By.name( "login_password" )).sendKeys( "112233@gmail.com" );
                 driver.findElement(By.id( "login_submit" )).click();
             }
             /*
              * 断言验证是否成功登录
              */
             Thread.sleep( 3000 );
             assertEquals(b,driver.getCurrentUrl());
             System.out.println(driver.getWindowHandle());
         } catch (Exception e){
             e.printStackTrace();
         }

本文转自 水滴的历程 51CTO博客,原文链接:http://blog.51cto.com/12390959/1893870