51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2188|回复: 3
打印 上一主题 下一主题

[转贴] Selenium3.0 自动化测试

[复制链接]
  • TA的每日心情
    擦汗
    前天 09:04
  • 签到天数: 1047 天

    连续签到: 5 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2016-10-27 11:43:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    早在2013年的时候,Selenium官方宣布,Selenium新的版本会在圣诞节的时候发布。但是,他们并没有说哪一个圣诞节发布。
      转眼的三年过去了,目前已经发布到Selenium3.0 beta4版本,这将会是Selenium3.0正式版本前的最后一个测试版本。
      尽管我对Selenium3.0比较失望(本以为它会集成移动端的自动化测试)。但是,它还是做了一些变动。
    Selenium3.0的变化                 
      最大的变化应该是去掉了Selenium RC 了,这是必然的结果。Selenium RC 是Selenium1.0的产物,Selenium2.0以WebDriver为主,经过这么多年有发展,Selenium RC已经很少有人在用了。Selenium3.0版本去掉是个必然的结果。
    • You’ll need to be running Java 8 to use the Java pieces of Selenium. This is the oldest version of Java officially supported by Oracle, so hopefully you’re using it already!
      Selenium3.0只支持Java8版本以上,所以,如果你是用Java+Selenium开发自动化测试,那么Java JDK需要升级到Java8了,对于其它编程来说可以忽略这点,除非你要使用Selenium Grid。
      Selenium3.0中的Firefox驱动独立了,在Selenium3.0之前,只要在不同编程语言下安装好Selenium就可以驱动Firefox浏览器运行自动化测试脚本。这是因为不同语言下的Selenium库中移动包含了Firefox浏览驱动。
      然而,现在Firefox浏览器驱动与Selenium库分离,单独提供下载。
      不过,geckodriver驱动要求Friefox浏览器必须48版本以上。
    • Support for Safari is provided on macOS (Sierra or later) via Apple’s own safaridriver.
      Safari是苹果公司的浏览器,然后,它也早就实现了多平台的支持,同样可以在Windows下运行,然而,它的驱动比较有意思,是集成到Selenium Server中的。也就是说你想让自动化测试脚本在Safari浏览器上运行,必须使用Selenium Server。
    • Support for Edge is provided by MS through their webdriver server.
    • Only versions 9 or above of IE are supported. Earlier versions may work, but are no longer supported as MS no longer supports them.
    • 如何使用浏览器驱动                                       
        读者可以单独创建一个目录,如:D:/drivers/ ,把不同浏览器的驱动都放到该目录。geckodriver.exe(Firefox)、chromedriver.exe(Chrome)、MicrosoftWebDriver.exe(Edge)、IEDriverServer.exe(IE)、operadriver.exe(Opera)等。
        然后,将D:/drivers/添加到系统环境变最path下面即可。

      Python安装Selenium3.0                                                   
      通过pip安装,3.0.0b3为当前最新版本。
      >pip install selenium==3.0.0b3
      Selenium3.0的API没有任何改变,跑个简单的例子验证一下。
      1. from selenium import webdriver

      2. driver = webdriver.Firefox()
      3. driver.get("http://www.baidu.com")

      4. driver.find_element_by_id("kw").send_keys("Selenium2")
      5. driver.find_element_by_id("su").click()

      6. driver.quit()
      复制代码
      Java安装Selenium3.0                                                        
        下载Selenium Server ,3.0.0-beta4为当前最新版本:http://www.seleniumhq.org/download/
        打开Eclipse,导入:如下图:
        同样通过一个简单的例子来验证Selenium3.0工作正常。
      1. package base.test.demo;

      2. import org.openqa.selenium.By;
      3. import org.openqa.selenium.WebDriver;
      4. import org.openqa.selenium.firefox.*;

      5. public class BaiduTest {
      6.     public static void main(String[] args) {

      7.         WebDriver driver = new FirefoxDriver();
      8.         driver.get("https://www.baidu.com/");
      9.         driver.findElement(By.id("kw")).sendKeys("selenium java");
      10.         driver.findElement(By.id("su")).click();
      11.         driver.quit();
      12.     }

      13. }
      复制代码



    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏4
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 06:33 , Processed in 0.066557 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表