public class ChromeBrower extends AbstractWebBrower
文件名:ChromeBrower.java
用途:用于启动谷歌浏览器,并加载相应的待测页面,支持对浏览器进行部分个性化的配置, 以达到相应的测试效果。
启动浏览器需要调用AbstractWebBrower.getDriver()
方法启动浏览器,若在构造方法中定义了Page
类,则
启动浏览器时会自动对页面进行加载,若未定义,则只打开浏览器,如:
若调用方法:
ChromeBrower brower = new ChromeBrower(File)
brower.AbstractWebBrower.getDriver()
后将只全屏打开浏览器,不会加载页面;若调用方法:
ChromeBrower brower = new ChromeBrower(File, Page)
//或ChromeBrower brower = new ChromeBrower(File, String, String)
brower.AbstractWebBrower.getDriver()
后将全屏打开浏览器,并加载相应的页面
对于个性化配置,在调用AbstractWebBrower.getDriver()
方法前调用addConfig(ChromeOptionType)
或addConfig(ChromeOptionType, Object)
方法,通过枚举类ChromeBrower.ChromeOptionType
向浏览器添加相应的配置,在启动浏览器时,添加的配置会自动加载。
若添加配置在调用AbstractWebBrower.getDriver()
方法之后,则设置的配置不会生效。
编码时间:2020年4月17日下午2:56:08
修改时间:2020年11月7日下午7:12:48
Modifier and Type | Class and Description |
---|---|
static class |
ChromeBrower.ChromeOptionType
文件名:ChromeBrower.java
|
driverFile, nowPage, pageMap, windowHandleSet
driver, informationJson
Constructor and Description |
---|
ChromeBrower(File driverFile)
指定驱动文件所在路径
|
ChromeBrower(File driverFile,
Page page)
指定驱动文件路径并添加一个待测站点
|
ChromeBrower(File driverFile,
String url,
String pageName)
指定驱动文件路径并添加一个待测站点
|
Modifier and Type | Method and Description |
---|---|
void |
addConfig(ChromeBrower.ChromeOptionType chromeOptionType)
用于添加浏览器无需带参数的配置
|
void |
addConfig(ChromeBrower.ChromeOptionType chromeOptionType,
Object value)
用于添加浏览器需要带参数的配置,参数需要严格按照枚举中的说明进行配置,否则配置不会生效。 若添加的配置是不需要传入参数的,
则将忽略传入的参数,无参配置可以使用
addConfig(ChromeOptionType) 方法进行添加 |
void |
addPersonalityConfig(String key,
Object value)
用于向浏览器中添加谷歌浏览器允许设置的个性化配置。
|
void |
clearConfig()
清空所有的配置,调用该方法后等同于重新构造
ChromeOptions 类对象 |
protected String |
getBrowerDriverSetName()
用于返回浏览器驱动设置的名称,由于每个浏览器不同,导致启动驱动名称也不同
|
org.openqa.selenium.chrome.ChromeOptions |
getConfig()
用于返回谷歌浏览器的配置,可通过此方法,获取到
ChromeOptions 对象后,在
外部对浏览器进行配置 |
protected void |
openBrower()
用于启动浏览器
|
void |
setBinary(File path)
用于设置谷歌浏览器可执行文件路径,在启动浏览器时,将打开该路径下的浏览器。
通过该方法可用于打开为谷歌浏览器内核的浏览器
|
alertAccept, alertDimiss, alertGetText, alertInput, closeBrower, closeLabel, getAllInformation, getDriver, getNowPage, getOpenPage, hasPopuWindow, initialization, maxWindow, openUrl, openUrl, refreshPage, switchNowPage, switchPopuWindow, switchWindow, switchWindow
getLogRecord
public ChromeBrower(File driverFile, Page page)
driverFile
- 驱动文件对象page
- Page
类对象public ChromeBrower(File driverFile, String url, String pageName)
driverFile
- 驱动文件对象url
- 待测站点pageName
- 待测站点名称,用于切换页面public ChromeBrower(File driverFile)
driverFile
- 驱动文件对象public void addConfig(ChromeBrower.ChromeOptionType chromeOptionType, Object value)
addConfig(ChromeOptionType)
方法进行添加chromeOptionType
- 浏览器配置枚举(ChromeBrower.ChromeOptionType
枚举类)value
- 需要设置的值public void addPersonalityConfig(String key, Object value)
例如,设置启动的浏览器不弹出窗口,则可以按照以下配置:
chrome.addPersonalityConfig("profile.managed_default_content_settings.popups", 2)
key
- 配置在浏览器对应的键值value
- 其配置对应的传参public void addConfig(ChromeBrower.ChromeOptionType chromeOptionType)
chromeOptionType
- 浏览器配置枚举(ChromeBrower.ChromeOptionType
枚举类)public void setBinary(File path)
用于设置谷歌浏览器可执行文件路径,在启动浏览器时,将打开该路径下的浏览器。 通过该方法可用于打开为谷歌浏览器内核的浏览器
注意:若浏览器启动后再设置浏览器启动路径时,会重新打开一个新的浏览器,且
WebDriver
对象将重新构造,指向新打开的浏览器
path
- 浏览器执行路径public void clearConfig()
ChromeOptions
类对象public org.openqa.selenium.chrome.ChromeOptions getConfig()
ChromeOptions
对象后,在
外部对浏览器进行配置protected void openBrower()
AbstractBrower
openBrower
in class AbstractBrower
protected String getBrowerDriverSetName()
AbstractWebBrower
getBrowerDriverSetName
in class AbstractWebBrower
Copyright © 2024. All rights reserved.