調(diào)用瀏覽器,來進(jìn)行自動化測試,是一個常規(guī)操作,或者說針對少量測試用例,可以打開瀏覽器運行
但是針對大量運行測試用例來說,如果每個測試用例都需要調(diào)用一次 瀏覽器,那么無疑對服務(wù)器增加了巨大的壓力
那么有沒有一個辦法,不調(diào)用瀏覽器,讓瀏覽器在后臺偷偷工作呢 ?
這個可以有: 用chrome-headless
? ?Chrome-headless 模式, Google 針對 Chrome 瀏覽器 59版 新增加的一種模式,可以讓你不打開UI界面的情況下使用 Chrome 瀏覽器,所以運行效果與 Chrome 保持完美一致。文章來源:http://www.zghlxwxcb.cn/news/detail-587971.html
用法:文章來源地址http://www.zghlxwxcb.cn/news/detail-587971.html
package stzz.architect.ljxwtl.cn;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import java.time.Duration;
public class SeleniumMain {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver","/Users/stzz/Downloads/chromedriver");
ChromeOptions chromeOptions = new ChromeOptions();
//設(shè)置 chrome 的無頭模式
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--disable-gpu");
chromeOptions.addArguments("--no-sandbox");
chromeOptions.addArguments("--disable-dev-shm-usage");
chromeOptions.addArguments("--start-maximized");
ChromeDriver webDriver = new ChromeDriver(chromeOptions);
webDriver.manage().window().maximize();
webDriver.get("http://baidu.com");
webDriver.manage().timeouts().pageLoadTimeout(Duration.ofSeconds(10));
WebElement userNameElement = webDriver.findElement(By.cssSelector(".pass-text-input.pass-text-input-userName"));
userNameElement.sendKeys("XXXXXXXXXX");
WebElement passwordElement = webDriver.findElement(By.cssSelector(".pass-text-input.pass-text-input-password"));
passwordElement.sendKeys("XXXXXXXXXX");
WebElement sendClickElement = webDriver.findElement(By.cssSelector(".pass-button.pass-button-submit"));
sendClickElement.click();
}
}
到了這里,關(guān)于selenium中ChromeOptions的headless(不顯示頁面的界面,即在后臺運行)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!