• 软件测试(五)


    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:测试结果爆慢,不知道什么原因。

      

      

  • 相关阅读:
    C#多线程之Parallel中 类似于for的continue,break的方法
    C#中静态类、静态方法和静态变量的简单说明
    C# 类属性封装、字段的详解
    BackgroundWorker 后台进程控制窗体label、richtextbook内容刷新
    asp.net 实现 tts
    System.Speech.Synthesis 添加暂停、继续功能
    微软TTS,Neospeech TTS 简单使用
    VS2015如何批量统改相同变量名
    VS2015时显示无法启动此程序 因为计算机中丢失ucrtbased.dll
    Windows环境下MinGW/gcc安装和环境配置
  • 原文地址:https://www.cnblogs.com/zyqBlog/p/5399306.html
Copyright © 2020-2023  润新知