selenium2 基于对象的测试,在selenium2中一共支持以下浏览器:
  • Firefox(FirefoxDriver)
  • IE(InternetExplorerDriver)
  • Chrome(ChromeDriver)
  • Opera(OperaDriver)
  • Andriod(AndroidDriver)
  • iPhone(IPhoneDriver)
一、Firefox浏览器测试
  //打开默认路径的firefor(C:\Program Files (x86)\Mozilla Firefox\firefox.exe)
  package Test;
  import org.openqa.selenium.*;
  import org.openqa.selenium.firefox.FirefoxDriver;
  //打开firefox浏览器
  public class TestDemo1 {
    public static void main(String[] args) {
     WebDriver driver;
    //默认打开是去C盘下面去找,但是我们不是安装在C盘下,所以要指明路径 setProperty()设置指定键对值的系统属性
    System.setProperty("webdriver.firefox.bin","F:\\软件安装\\firefox\\firefox.exe"); //双斜杠是转义
    //实例化一个对象firefox
    driver=new FirefoxDriver();
    String testUrl="http://192.168.3.86:8701/yunling-pac-adm/login.jhtml";
     driver.get(testUrl);
    driver.quit();
   }
}
注:如果浏览器启动不能打开网页,可能是firefox版本过高
 
二、Chrome浏览器测试
  chrome在 webdriver中没有自带的驱动,需要网上下载一个
  WebDriver driver=new ChromeDriver();
  System.setProperty("webdriver.chrome.driver", "E:\\webdriver\\chromedriver\\chromedriver.exe");
  //这是与firefox一各很大的区别
 
三、IE浏览器测试
  也需要下载驱动
  System.setProperty("webdriver.ie.driver", "F:\\webdriver\\iedriver\\IEDriverServer.exe");
  driver=new InternetExplorerDriver();
 
四、使用Mac系统中的Safari浏览器测试
  环境准备:在Mac系统中默认都会安装Safari浏览器,所以无需进行特别的安装配置,使用webdriver自动化无需下载驱动程序
  直接实例化浏览器对象
  WebDriver driver = new SafariDriver() ;
 
五、使用TestNG进行并发兼容性测试
  Web项目中经常会进行浏览器的兼容性测试,而兼容性测试的工作重复性相当高,TestNG提供了并发执行测试用例的功能,可以让测试用例以并发的形式执行,实现并发测试不同浏览器的兼容性测试需求。
  测试用例说明:分别使用IE,Chrome,Firefox浏览器,并发方式打开sogou首页中搜索某个关键词。
  测试代码:
  public class BingFaTest {
  private WebDriver driver;
  private String baseUrl="http://www.sogou.com";
 
  @Parameters("browser")
  @BeforeClass
  public void BeforeTest(String Browser){
    if(Browser.equalsIgnoreCase("firefox")){
    System.setProperty("webdriver.firefox.bin", "F:\\firefox\\firefox.exe");
    driver=new FirefoxDriver();
      }else if (Browser.equalsIgnoreCase("ie")) {
        System.setProperty("webdriver.ie.driver", "F:\\webdriver\\iedriver\\IEDriverServer.exe");
          driver=new InternetExplorerDriver();
     }else {
       System.setProperty("webdirver.chrome.driver", "E:\\webdriver\\chromedriver\\chromedriver.exe");
      driver=new ChromeDriver();
    }
    driver.get("http://www.sogou.com");
  }
 
  @Test
  public void testSougoSearch() throws InterruptedException {
    driver.get(baseUrl);
    driver.findElement(By.id("query")).sendKeys("自动化测试");
      driver.findElement(By.id("stb")).click();
    Thread.sleep(10000);
    Assert.assertTrue(driver.getPageSource().contains("自动化"));
  }
 
    @AfterClass
    public void AfterClass(){
    driver.close();
  }
}
 
  TestNG.xml
  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
  <suite name ="Suite" parallel="tests" thread-count="3">
  <test name ="FirefoxTest">
   <parameter name="browser" value="firefox"/>
  <classes >
   <class name="cn.gloryroad.BingFaTest"/>
  </classes>
   </test>
  <test name="IETest">
  <parameter name="browser" value="ie"/>
  <classes>
  <class name="cn.gloryroad.BingFaTest"/>
  </classes>
  </test>
  <test name="ChromeTest">
  <parameter name="browser" value="chrome"/>
   <classes>
  <class name="cn.gloryroad.BingFaTest"/>
  </classes>
  </test>
  </suite>
 
需要驱动包的私问我!
 

WebDriver多浏览器测试的更多相关文章

  1. [技术博客]基于动态继承类、WebDriver的浏览器兼容性测试框架搭建

    问题背景 观察使用selenium进行自动化测试的过程,我们可以将它概述为: 启动测试进程,在该进程中构建WebDriver 启动浏览器进程,将它与WebDriver建立连接 使用WebDriver向 ...

  2. selenium + python 多浏览器测试

    selenium + python 多浏览器测试 支持库包 在学习 Python + Selenium 正篇之前,先来看下对多浏览器模拟的支持.目前selenium包中已包含webdriver,hel ...

  3. Python多线程Selenium跨浏览器测试

    前言 在web测试中,不可避免的一个测试就是浏览器兼容性测试,在没有自动化测试前,我们总是苦逼的在一台或多台机器上安装N种浏览器,然后手工在不同的浏览器上验证主业务流程和关键功能模块功能,以检测不同浏 ...

  4. 【Python】详解Python多线程Selenium跨浏览器测试

    前言 在web测试中,不可避免的一个测试就是浏览器兼容性测试,在没有自动化测试前,我们总是苦逼的在一台或多台机器上安装N种浏览器,然后手工在不同的浏览器上验证主业务流程和关键功能模块功能,以检测不同浏 ...

  5. Selenium多浏览器测试

    在浏览器的兼容性测试中,会测试产品在不同浏览器上的兼容性,比较主流的浏览器有IE.Firefox.Chrome,Opera,Safari等.还有其它如360.QQ.遨游.百度等浏览器都是基于IE或者c ...

  6. Python+Selenium学习笔记18 - 不开启浏览器测试

    运行脚本时间比较长时可以不打开浏览器测试,这样在测试运行时,电脑还是可以用作其他操作的. 只需要在运行脚本上加上下面代码的678行即可 1 # coding = utf-8 2 3 from sele ...

  7. 《手把手教你》系列技巧篇(二十三)-java+ selenium自动化测试-webdriver处理浏览器多窗口切换下卷(详细教程)

    1.简介 上一篇讲解和分享了如何获取浏览器窗口的句柄,那么今天这一篇就是讲解获取后我们要做什么,就是利用获取的句柄进行浏览器窗口的切换来分别定位不同页面中的元素进行操作. 2.为什么要切换窗口? Se ...

  8. modern.IE – Web 开发必备的 IE 浏览器测试工具

    modern.IE 是微软推出的一个开发人员中心,提供免费的工具和资源,旨在使您能够花更少的时间来测试各种版本的 Internet Explorer,并留出更多时间在现代 Web 上构建重要的内容.m ...

  9. 使用python selenium webdriver模拟浏览器

    selenium是进行web自动化测试的一个工具,支持C,C++,Python,Java等语言,他能够实现模拟手工操作浏览器,进行自动化,通过webdriver驱动浏览器操作,我使用的是chrome浏 ...

随机推荐

  1. HTML中的行内元素和框元素详解

    定义 传统的块级元素定义中只是说明了在文档流中形成了一个块,在前后加换行,这里有些笼统. 其实框元素是指宏观上的框元素,它包括3种类型:1.本身就是块级元素 2.dispaly被设置为类block 3 ...

  2. 华为OJ之最长公共子序列

    题目描述: 对于两个给定的字符串,给出他们的最长公共子序列. 题目分析: 1,在之前的博文(http://www.cnblogs.com/yonguo123/p/6711360.html)中我们讨论了 ...

  3. Golang 基于libpcap/winpcap的底层网络编程——gopacket安装

    Go简介 Go是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性. 语法类似C/C++,但是又带有一点python的味道 其中个人认为最出色的特点就是他的包管 ...

  4. vs2015数据驱动的单元测试

    今天在做测试的时候boss让我这个菜鸟做vs2015下c#的单元测试,并且给了我参考http://www.cnblogs.com/kingmoon/archive/2011/05/13/2045278 ...

  5. (转)Java里的堆(heap)栈(stack)和方法区(method)(精华帖,多读读)

    [color=red][/color]<一> 基础数据类型直接在栈空间分配, 方法的形式参数,直接在栈空间分配,当方法调用完成后从栈空间回收.   引用数据类型,需要用new来创建,既在栈 ...

  6. SharePoint 2016 配置工作流环境

    前言 SharePoint 2016 默认创建工作流的时候,工作流平台只包含2010版本,如果想要使用状态机工作流,需要单独安装workflow manager 1.0才可以,下面,我们为大家介绍一下 ...

  7. 原生JS元素怎么取消事件

    关于原生JS元素怎么取消事件,有3种方式 常规方法:removeEventListener 案例: <body> <div id="myDIV"> div ...

  8. ABP+AdminLTE+Bootstrap Table权限管理系统第九节--AdminLTE模板页搭建

    AdminLTE 官网地址:https://adminlte.io/themes/AdminLTE/index2.html 首先去官网下载包下来,然后引入项目. 然后我们在web层添加区域Admin以 ...

  9. Python数据可视化Matplotlib——Figure画布背景设置

    之前在今日头条中更新了几期的Matplotlib教学短视频,在圈内受到了广泛好评,现应大家要求,将视频中的代码贴出来,方便大家学习. 为了使实例图像显得不单调,我们先将绘图代码贴上来,此处代码对Fig ...

  10. vue的一些坑(第一天)

    1:刚开始在创建项目的时候一直出现vue不是内部或外部命令 关于这个的解决方案网上给出的很多的解决方案是配置环境,这个我就不在赘述了: 但是我觉得那样太麻烦,就没用,只是重新 npm i vue-cl ...