简介
Selenide是一个建立在Selenium WebDriver之上自动化测试工具。
相对于Selenium的优点
- 智能等待(基于某些策略判断页面或所需元素是否加载完毕)
- 简洁方法(封装Selenium的常用方法)
- 支持Ajax
- 自动截图(报错自动截图)
- 等等。
简单点说就是比Selenium更易于使用,更稳定,更强大的优化版。
入门使用
Maven用户:
<dependency>
<groupId>com.codeborne</groupId>
<artifactId>selenide</artifactId>
<version>5.0.0</version>
<scope>test</scope>
</dependency>
基础示例:
package com.back.selenide;
import static com.codeborne.selenide.Selenide.*;//必须
import static com.codeborne.selenide.WebDriverRunner.setWebDriver;//当需要控制缓存及其他浏览器属性时必须
import org.openqa.selenium.WebDriver;//当需要控制缓存及其他浏览器属性时必须
import org.openqa.selenium.chrome.ChromeDriver;//当需要控制缓存及其他浏览器属性时必须
import org.openqa.selenium.chrome.ChromeOptions;//当需要控制缓存及其他浏览器属性时必须
import com.codeborne.selenide.Configuration;//当需要修改配置时必须
/**
* Prerequisites:Selenide 5.0.0/ Chrome 70.0 / JDK 1.8
*/
public class SelenideTest {
/** 当前用户浏览器缓存 **/
private static String userDataDir = "--user-data-dir=E:\\chromedriver_win32\\cache";
/** 浏览器PAC代理 **/
private static String brownProxy = "--proxy-pac-url=http://127.0.0.1:1080/pac?t=20181109191116429&secret=rFWyMBjrf/Cc1QMgBid9J+JylWE5tFKpwPElfclleOk=";
/** Chrome驱动 **/
private static String chromeDriver = "webdriver.chrome.driver";
/** Chrome驱动地址 **/
private static String chromeDriverAddress = "E:\\chromedriver_win32\\chromedriver.exe";
public static void main(String[] arg) {
try {
Configuration.holdBrowserOpen = true; // 不自动关闭浏览器
// Configuration.proxyEnabled = true; //代理开关
// Configuration.proxyHost = "127.0.0.1"; //代理地址
// Configuration.proxyPort = 1088; //代理端口
// Configuration.reportsFolder = "f:\\";//报错截图地址
Configuration.startMaximized = true;// 开启全屏
ChromeOptions options = new ChromeOptions();
System.setProperty(chromeDriver, chromeDriverAddress);// 设置驱动
options.addArguments(userDataDir);// 设置缓存
options.addArguments(brownProxy);// 设置代理
options.addArguments("--user-agent=android");// 设置标识
WebDriver webDriver = new ChromeDriver(options);
setWebDriver(webDriver);
open("https://www.baidu.com");
$("#kw").setValue("ip");
$("#su").click();
open("https://ip.cn");
} catch (Exception e) {
e.printStackTrace();
}
}
}
参考自官网:quick-start
本文由 Administrator 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站部分文章采集自互联网,因某些原因未注明出处,如有侵权,请留言告知。