zoukankan      html  css  js  c++  java
  • 软件测试(五)

    Selenium开发Java WebDriver测试程序

    一、安装Selenium插件

      在FireFox浏览器中,选择  菜单--开发者--获取更多工具,搜索Selenium即可,安装完成后,在浏览器中出现下图图标表示安装成功。

      

    二、使用SeleniumIDE录制并导出脚本

      1、录制脚本

        点击上图所示按钮启动SeleniumIDE,点击所示的红色按钮启动录制脚本

        

        在FireFox中输入网址,在这里输入  www.ncfxy.com,输入正确的用户名和密码,点击登录,在邮箱的位置上右键点击选择assertText(需要安装FirePath,方法同安装SeleniumIDE)(实验要求)。

        在此,完成脚本的录制。

        可以选择,执行速度的快慢,执行测试用例

        

        执行的结果:

        

        2、导出脚本

          在SeleniumIDE中选择,文件--Export test suite ---Java/Junit4/webdriver导出脚本。

    三、编写WebDriver程序,测试csv数据

      在Eclipse中新建项目...

      项目中需要引进相应的Selenium jar包 和webdriver的驱动。

      代码如下:

      

    package test;
    
    import static org.junit.Assert.assertEquals;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.Arrays;
    import java.util.Collection;
    import java.util.concurrent.TimeUnit;
    
    import org.junit.After;
    import org.junit.Before;
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.junit.runners.Parameterized;
    import org.junit.runners.Parameterized.Parameters;
    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.firefox.FirefoxDriver;
    
    
    @RunWith(Parameterized.class)
    public class test {
        
        private String name;
        private String email;
        private WebDriver driver;
        private String baseUrl;
        
        public test(String name,String email){
            this.name = name;
            this.email = email;
        }
    
        @Before
        public void setUp() throws Exception {
            driver = new FirefoxDriver();
            baseUrl = "http://www.ncfxy.com/";
            driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
            driver.get(baseUrl);
            
        }
        
        @Parameters
        public static Collection<Object[]> getData() throws IOException{
            File inFile = new File("C://Users/1dell/Desktop/info.csv");
            Object[][] obj = new Object[109][];
            String in ="";
             try {
                    
                    @SuppressWarnings("resource")
                    BufferedReader reader = new BufferedReader(new FileReader(inFile));
                    int i = 0;
                    while((in = reader.readLine())!=null){
                        obj[i] = new Object[]{in.split(",")[0], in.split(",")[1]};
                        i++;
                        
                    }  
                    
                } catch (FileNotFoundException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            return Arrays.asList(obj);
        }
     
        @After
        public void tearDown() throws Exception {
            driver.close();
        }
    
        
        @Test
        public void test() {
            
            
            WebElement element = driver.findElement(By.id("name"));
            element.sendKeys(this.name);
            
            WebElement element1 = driver.findElement(By.id("pwd"));
            element1.sendKeys(this.name.substring(4));
            
            WebElement element3 = driver.findElement(By.id("submit"));
            element3.click();
            
            assertEquals(this.email, driver.findElement(By.xpath(".//*[@id='table-main']/tr[1]/td[2]")).getText());
            
        }
    
    }

    部分测试结果如下:

    ps:测试结果爆慢,不知道什么原因。

      

      

  • 相关阅读:
    bower使用记录
    前端生成二维码
    删除顽固node_modules
    vue初体验:实现一个增删查改成绩单
    H5常用代码:适配方案5
    H5常用代码:适配方案4
    H5常用代码:适配方案3
    ARFA 教堂的第四次洗礼&斜率优化重学
    CSP考前总结&周二晚+周三晚模拟考总结&洛谷11月月赛 III Div.1总结
    T44253 绝美的挣扎 题解
  • 原文地址:https://www.cnblogs.com/zyqBlog/p/5399306.html
Copyright © 2011-2022 走看看