DevOps 应用集

从selenium v1到Selenium v3命令迁移的java实现

Posted on 11 12 月, 201811 12 月, 2018 by admin

Selenium v1 一般使用 java 包 com.thoughtworks.selenium 调用或处理 csv file, 运行Selenium类,

而Selenium v3 一般使用 java 包 org.seleniumhq.selenium, 运行WebDriver类并支持 Remote Selenium 调用

以后的文章将会进一步距离说明两者在启动上的差异.

两者版本的不同对浏览器支持也会差异很大,例如Firefox版本

此篇文章的测试selenium v1 在 FFv3低版本, 而selenium v2 在FFv63版本

这里比较两个不同selenium版本典型命令的处理差异,对于迁移命令和解析供参考

#Open

Sele1:

     Selenium.open(url);

Sele3:

     Webdriver.get(url);

 

#TYPE

Sele1:

     Selenium.type(element,value);

Sele3:

     WebElement.sendKeys(value);

#CLICK

Sele1:

     Selenium.click(element);

Sele3:

     WebElement.click();

#WAIT

Sele1:

     Selenium.waitForPageToLoad(timeout);

Sele3:

long timeout=...;

try {

      Thread.sleep(timeout);

}catch(InterruptedException e){

      e.printStackTrace();

}

#CLICKAT

Sele1:

     Selenium.clickAt(element,posString);

Sele3:

     WebDriver driver...;

     Actions builder = new Actions(driver);

     builder.moveToElement(element, 0, 0).click().build().perform();

#SELECT

Sele1:

     Selenium.select(element,value);

Sele3:

     WebElement.click();

 

#KEYPRESS

Sele1:

     Selenium.keyPress(element,value);

Sele3:

     WebDriver driver..;.

     Actions action = new Actions(driver);

     action.sendKeys(value);

#ASSERTTEXTPRESENT

Sele2:

     Selenium.isTextPresent(element);

Sele3:

     WebDriver.getPageSource().contains(elementtext);

 

 
还有很多命令仍然需要对比解析,例如selectAndwait,check,typefilename,AssertElementPresent…
可以结合上面的命令解析和使用,其他命令如 WindowFocus,OpenWindow etc, 我们可以调用JavascriptExecutor 实现 或者 用 Actions类解决更多问题.

Posted in Java, Selenium

文章导航

Previous PostDevOps Docker实践: 如何创建自己的docker仓库
Next Post从Selenium1迁移到Selenium3发生的错误及纠正

发表回复 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

近期文章

  • Oracle表中字段为timestamp值转化为date显示的sql语句
  • 解决idea环境代码保存后不能实时编译的问题
  • 自定义XStream fields序列化顺序
  • Oracle 修改blob为clob,clob为blob
  • Apple Script: 备份Mac Notes到PDFs

近期评论

    归档

    • 2021 年 2 月
    • 2020 年 8 月
    • 2020 年 7 月
    • 2020 年 1 月
    • 2019 年 11 月
    • 2019 年 5 月
    • 2019 年 3 月
    • 2019 年 2 月
    • 2018 年 12 月

    分类

    • Apple Script
    • docker
    • Git
    • gRPC
    • Hana
    • Idea
    • Java
    • Jenkins
    • Linux
    • Maven
    • Mockito
    • Oracle
    • Selenium
    • Sona
    • SpringBoot
    • Tomcat
    • Uncategorized
    • VirtualBox
    • VMWare
    • VPN
    • XML

    其他操作

    • 登录
    • 条目 feed
    • 评论 feed
    • WordPress.org

    bidvertiser

    Powered by DoHints.cn