修饰符 | 名称 | 描述 |
---|---|---|
static String |
CLOSE_OPTION |
|
protected static String |
HAS_NETWORK_CONDITIONS_CLASS_NAME |
|
static String |
QUERY_STRING_SEPARATOR |
|
static String |
UTF8 |
构造函数和描述 |
---|
Browser() 使用默认配置加载器创建一个新的浏览器,加载默认配置文件。 |
Browser(Configuration config) 使用给定配置创建一个新的浏览器。 |
Browser(Map props, Configuration config) 使用给定配置创建一个新的浏览器实例,然后将 props 应用为浏览器上的属性覆盖。 |
类型参数 | 返回类型 | 名称和描述 |
---|---|---|
<T extends Page> |
T |
at(Class<T> pageType) 通过为此页面类型运行 at 检查器来检查浏览器是否在当前页面上 |
<T extends Page, R> |
R |
at(Class<T> pageType, Closure<R> assertions) 通过使用 at(pageType) 运行 at 检查器来检查浏览器是否在当前页面上。 |
<T extends Page> |
T |
at(T page) 通过为此页面实例运行 at 检查器来检查浏览器是否在当前页面上 |
<T extends Page, R> |
R |
at(T page, Closure<R> assertions) 通过使用 at(page) 运行 at 检查器来检查浏览器是否在当前页面上。 |
|
void |
checkIfAtAnUnexpectedPage(Class<? extends Page>[] expectedPages) 检查是否在配置为意外的页面之一。 |
|
void |
checkIfAtAnUnexpectedPage(Page[] expectedPages) 检查是否在配置为意外的页面之一。 |
|
void |
cleanReportGroupDir() 如果 getReportGroupDir() 返回的目录存在,则从文件系统中删除它。 |
|
void |
clearCookies(String[] additionalUrls) 通过将浏览器导航到作为此方法参数传入的每个 URL 并清除其 Cookie,清除当前域和多个附加域的 Cookie。 |
|
void |
clearCookies() 清除浏览器拥有的当前域的所有 Cookie。 |
|
void |
clearCookiesQuietly() 清除浏览器当前拥有的所有 Cookie,抑制任何 webdriver 异常。 |
|
void |
clearWebStorage() 清除 Web 存储,即当前域的本地存储和会话存储。 |
|
void |
clearWebStorageQuietly() 清除 Web 存储,即当前域的本地存储和会话存储,抑制任何 webdriver 异常。 |
|
void |
close() 关闭当前驱动程序窗口。 |
|
protected NavigatorFactory |
createNavigatorFactory() 首次请求时,调用此方法创建导航器工厂。 |
<T extends Page> |
T |
createPage(Class<T> pageType) 创建给定页面类型的新实例并初始化它。 |
<T> |
protected T |
doWithWindow(Map options, Closure<T> block) |
|
static Browser |
drive(Closure script) 通过默认构造函数创建一个新的浏览器对象,并以浏览器实例作为闭包的委托执行闭包。 |
|
static Browser |
drive(Configuration conf, Closure script) 使用配置创建一个新的浏览器,并以浏览器实例作为闭包的委托执行闭包。 |
|
static Browser |
drive(Map browserProperties, Closure script) 使用属性创建一个新的浏览器,并以浏览器实例作为闭包的委托执行闭包。 |
|
static Browser |
drive(Browser browser, Closure script) 以浏览器作为其委托执行闭包。 |
<T> |
Optional<T> |
driverAs(Class<T> castType) |
|
Set<String> |
getAvailableWindows() 检索所有可用窗口 |
|
String |
getBaseUrl() 用于解析所有相对 URL 的 URL。 |
|
Configuration |
getConfig() 提供对与此浏览器关联的配置对象的访问。 |
|
String |
getCurrentUrl() 检索当前 URL |
|
String |
getCurrentWindow() 检索当前窗口 |
|
WebDriver |
getDriver() 用于自动化实际浏览器的驱动程序实现。 |
|
JavascriptInterface |
getJs() 返回一个新创建的、连接到此浏览器的 JavaScript 接口。 |
|
WebStorage |
getLocalStorage() 返回一个允许访问和操作本地存储的对象。 |
|
NavigatorFactory |
getNavigatorFactory() 返回为此浏览器创建导航器实例的工厂。 |
|
Page |
getPage() 提供对当前页面对象的访问。 |
|
File |
getReportGroupDir() 将用于 方法 的目录。 |
|
WebStorage |
getSessionStorage() 返回一个允许访问和操作会话存储的对象。 |
|
void |
go(String url) 将浏览器发送到给定 URL。 |
|
void |
go(String url, UrlFragment fragment) 将浏览器发送到给定 URL 和片段。 |
|
void |
go(Map params, UrlFragment fragment) 将浏览器发送到带有给定查询参数和片段的 基本 URL。 |
|
void |
go(Map params, String url, UrlFragment fragment) 将浏览器发送到给定 URL,带有给定查询参数和片段。 |
|
boolean |
isAt(Class<? extends Page> pageType, boolean honourGlobalAtCheckWaiting) 通过为此页面类型运行 at 检查器来检查浏览器是否在当前页面上,抑制断言错误。 |
|
boolean |
isAt(Page page, boolean honourGlobalAtCheckWaiting) 通过为此页面实例运行 at 检查器来检查浏览器是否在当前页面上,抑制断言错误。 |
|
Object |
methodMissing(String name, Object args) 将方法调用直接委托给当前页面对象。 |
<T extends Page> |
T |
page(Class<T> pageClass) 将浏览器的页面更改为给定类的实例。 |
|
Page |
page(Class<? extends Page>[] potentialPageClasses) 将浏览器的页面更改为第一个 at 检查器返回 true 值的给定类型的实例。 |
<T extends Page> |
T |
page(T page) 在初始化后将此浏览器的页面设置为给定页面。 |
|
Page |
page(Page[] potentialPageInstances) 将浏览器的页面更改为第一个 at 检查器返回 true 值的给定实例的实例。 |
|
void |
pause() 无限期地等待驱动浏览器中的 geb.unpause JavaScript 变量设置为 true 。 |
|
Object |
propertyMissing(String name) 将属性访问直接委托给当前页面对象。 |
|
Object |
propertyMissing(String name, Object value) 将属性赋值直接委托给当前页面对象。 |
|
void |
quit() 退出驱动程序。 |
|
void |
report(String label) 使用 config's reporter 将浏览器状态快照写入当前 getReportGroupDir()。 |
|
void |
reportGroup(String path) 设置所有后续报告的“组”,即报告将被写入的报告目录内的相对路径。 |
|
void |
reportGroup(Class clazz) 将报告组设置为类的全名,将 "." 替换为 "/"。 |
|
void |
resetNetworkLatency() 删除任何先前配置的网络延迟。 |
|
void |
setBaseUrl(String baseUrl) 更改用于解析相对 URL 的基本 URL。 |
|
void |
setDriver(WebDriver driver) 设置(或更改)此浏览器下的 webdriver。 |
|
void |
setNetworkLatency(java.time.Duration duration) 允许向被驱动的浏览器引入网络延迟。 |
|
protected Object |
switchToWindow(String window) |
<T extends Page> |
T |
to(Map params, Class<T> pageType, Object[] args) 将浏览器发送到给定页面类型的 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。 |
<T extends Page> |
T |
to(Map params, Class<T> pageType, UrlFragment fragment, Object[] args) 将浏览器发送到给定页面类型的 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。 |
<T extends Page> |
T |
to(Map params, T page, Object[] args) 将浏览器发送到给定页面实例 URL,将页面设置为给定页面实例,并验证该页面的 at 检查器。 |
<T extends Page> |
T |
to(Map params, T page, UrlFragment fragment, Object[] args) 将浏览器发送到给定页面实例 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。 |
|
void |
verifyAtImplicitly(Class<? extends Page> targetPage) |
|
void |
verifyAtImplicitly(Page targetPage) |
<T extends Page> |
T |
via(Map params, Class<T> pageType, Object[] args) 将浏览器发送到给定页面类型的 URL,并将页面设置为给定类型的新实例。 |
<T extends Page> |
T |
via(Map params, Class<T> pageType, UrlFragment fragment, Object[] args) 将浏览器发送到给定页面类型的 URL,并将页面设置为给定类型的新实例。 |
<T extends Page> |
T |
via(Map params, T page, Object[] args) 将浏览器发送到给定页面实例 URL,并将页面设置为给定实例。 |
<T extends Page> |
T |
via(Map params, T page, UrlFragment fragment, Object[] args) 将浏览器发送到给定页面实例 URL,并将页面设置为给定实例。 |
<T> |
T |
withNewWindow(Map options, Closure windowOpeningBlock, Closure<T> block) 期望第一个闭包参数打开一个新窗口,并在新打开窗口的上下文中调用第二个闭包参数。 |
<T> |
T |
withNewWindow(Closure windowOpeningBlock, Closure<T> block) 期望第一个闭包参数打开一个新窗口,并在新打开窗口的上下文中调用第二个闭包参数。 |
<T> |
T |
withWindow(String window, Closure<T> block) 在由名称指定的窗口上下文中执行闭包 |
<T> |
List<T> |
withWindow(Closure specification, Closure<T> block) 在所有规范闭包返回 Groovy 真值的窗口上下文中执行闭包。 |
<T> |
List<T> |
withWindow(Map options, Closure specification, Closure<T> block) 在所有规范闭包返回 Groovy 真值的窗口上下文中执行闭包。 |
<T> |
T |
withWindow(Map options, String window, Closure<T> block) 在由名称指定的窗口上下文中执行闭包 |
使用默认配置加载器创建一个新的浏览器,加载默认配置文件。
使用给定配置创建一个新的浏览器。
使用给定配置创建一个新的浏览器实例,然后将 props
应用为浏览器上的属性覆盖。
通过为此页面类型运行 at 检查器来检查浏览器是否在当前页面上。将为 at 检查创建页面新实例。如果 at 检查器成功,此浏览器对象的页面实例将更新为给定页面类型的新实例,并返回新实例。如果给定 pageType 未定义 at 检查器,则抛出 UndefinedAtCheckerException。
如果启用了隐式断言(默认情况下启用),此方法将始终返回页面实例或抛出 AssertionError
通过使用 at(pageType)
运行 at 检查器来检查浏览器是否在当前页面上。如果 at 检查器成功,则执行作为最后一个参数传递的 assertions
闭包,其委托设置为 pageType
类的实例。如果启用了隐式断言(默认情况下启用),则 assertions
闭包中的每个语句都会被隐式断言。
assertions
闭包返回的值通过为此页面实例运行 at 检查器来检查浏览器是否在当前页面上。如果 at 检查器成功,此浏览器对象的页面实例将更新为该页面实例。如果给定页面对象未定义 at 检查器,则抛出 UndefinedAtCheckerException。
如果启用了隐式断言(默认情况下启用),此方法将始终返回页面实例或抛出 AssertionError
通过使用 at(page)
运行 at 检查器来检查浏览器是否在当前页面上。如果 at 检查器成功,则执行作为最后一个参数传递的 assertions
闭包,其委托设置为该页面实例。如果启用了隐式断言(默认情况下启用),则 assertions
闭包中的每个语句都会被隐式断言。
assertions
闭包返回的值检查是否在配置为意外的页面之一。
expectedPages
- 允许指定要忽略哪些意外页面进行检查检查是否在配置为意外的页面之一。
expectedPages
- 允许指定要忽略哪些意外页面进行检查如果 getReportGroupDir() 返回的目录存在,则从文件系统中删除它。
通过将浏览器导航到作为此方法参数传入的每个 URL 并清除其 Cookie,清除当前域和多个附加域的 Cookie。
additionalUrls
- 除了当前域之外,还需要清除 Cookie 的 URL清除浏览器拥有的当前域的所有 Cookie。
如果驱动浏览器积累了要清除的其他域的 Cookie,则应使用 clearCookies(java.lang.String[]) 方法。
清除浏览器当前拥有的所有 Cookie,抑制任何 webdriver 异常。
清除 Web 存储,即当前域的本地存储和会话存储。
清除 Web 存储,即当前域的本地存储和会话存储,抑制任何 webdriver 异常。
关闭当前驱动程序窗口。
首次请求时,调用此方法创建导航器工厂。
创建给定页面类型的新实例并初始化它。
使用配置创建一个新的浏览器,并以浏览器实例作为闭包的委托执行闭包。
使用属性创建一个新的浏览器,并以浏览器实例作为闭包的委托执行闭包。
用于解析所有相对 URL 的 URL。通常是应用程序或 Geb 正在交互的系统的根目录。
基本 URL 由配置决定。
提供对与此浏览器关联的配置对象的访问。
检索当前 URL
检索当前窗口
用于自动化实际浏览器的驱动程序实现。
要使用的驱动程序实现由配置决定。
返回一个新创建的、连接到此浏览器的 JavaScript 接口。
返回一个允许访问和操作本地存储的对象。
返回为此浏览器创建导航器实例的工厂。
将用于 方法 的目录。
使用 Configuration.getReportsDir 作为报告的基本位置(如果未设置,则抛出异常),并附加当前报告组。返回的文件对象保证存在于文件系统中。
如果当前报告组为 null
,此方法返回与 config.reportsDir
相同的值。
返回一个允许访问和操作会话存储的对象。
将浏览器发送到给定 URL 和片段。如果 URL 是相对 URL,则根据 基本 URL 解析。
将浏览器发送到带有给定查询参数和片段的 基本 URL。
将浏览器发送到给定 URL,带有给定查询参数和片段。如果 URL 是相对 URL,则根据 基本 URL 解析。
通过为此页面类型运行 at 检查器来检查浏览器是否在给定页面上,抑制断言错误。如果 at 检查器成功,此浏览器对象的页面实例将更新为调用此方法的实例。如果给定 pageType 未定义 at 检查器,则抛出 UndefinedAtCheckerException。如果 at 检查抛出 AssertionError(当启用隐式断言时会如此),此方法将抑制异常并返回 false。
通过为此页面实例运行 at 检查器来检查浏览器是否在给定页面上,抑制断言错误。如果 at 检查器成功,此浏览器对象的页面实例将更新为调用此方法的实例。如果给定页面实例未定义 at 检查器,则抛出 UndefinedAtCheckerException。如果 at 检查抛出 AssertionError(当启用隐式断言时会如此),此方法将抑制异常并返回 false。
将浏览器的页面更改为给定类的实例。
此方法执行以下操作
请注意,它不会通过运行其 at 检查器来验证页面是否与当前内容匹配
将浏览器的页面更改为第一个 at 检查器返回 true 值的给定类型的实例。
此方法执行以下操作
在初始化后将此浏览器的页面设置为给定页面。
此方法执行以下操作
请注意,它不会通过运行其 at 检查器来验证页面是否与当前内容匹配
将浏览器的页面更改为第一个 at 检查器返回 true 值的给定实例的实例。
此方法执行以下操作
无限期地等待驱动浏览器中的 geb.unpause
JavaScript 变量设置为 true
。
可以用作设置断点并在调试模式下运行 JVM 的替代方法,用于调试目的。
退出驱动程序。
使用 config's reporter 将浏览器状态快照写入当前 getReportGroupDir()。
label
- 报告文件的名称(不应包含文件扩展名)设置所有后续报告的“组”,即报告将被写入的报告目录内的相对路径。
path
- 一个相对路径,或 null
以便将报告写入基本报告目录将报告组设置为类的全名,将 "." 替换为 "/"。
删除任何先前配置的网络延迟。
更改用于解析相对 URL 的基本 URL。
此方法委托给 Configuration.setBaseUrl。
设置(或更改)此浏览器下的 webdriver。
此方法只能在发出任何请求之前调用,作为覆盖将从配置中创建的驱动程序实例的一种方式。在可能的情况下,首选使用配置机制来指定要使用的驱动程序实现。
此方法委托给 Configuration.setDriver。
允许向被驱动的浏览器引入网络延迟。
有助于在开发中的自动化代码中暴露与网络相关的时序问题。
仅在使用实现或可增强为 org.openqa.selenium.chromium.HasNetworkConditions 的驱动程序时支持。
将浏览器发送到给定页面类型的 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。
将浏览器发送到给定页面类型的 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。
将浏览器发送到给定页面实例 URL,将页面设置为给定页面实例,并验证该页面的 at 检查器。
将浏览器发送到给定页面实例 URL,将页面设置为给定类型的新实例,并验证该页面的 at 检查器。
将浏览器发送到给定页面类型的 URL,并将页面设置为给定类型的新实例。
将浏览器发送到给定页面类型的 URL,并将页面设置为给定类型的新实例。
将浏览器发送到给定页面实例 URL,并将页面设置为给定实例。
将浏览器发送到给定页面实例 URL,并将页面设置为给定实例。
期望第一个闭包参数打开一个新窗口,并在新打开窗口的上下文中调用第二个闭包参数。还可以指定一个选项映射,允许关闭新窗口,切换到不同页面以在全新窗口上下文中执行闭包,以及在窗口打开是异步的情况下等待窗口打开。
options
- 用于传递附加选项的映射windowOpeningBlock
- 应该打开新窗口的闭包block
- 在新窗口上下文中执行的闭包block
的返回值期望第一个闭包参数打开一个新窗口,并在新打开窗口的上下文中调用第二个闭包参数。
windowOpeningBlock
- 应该打开新窗口的闭包block
- 在新窗口上下文中执行的闭包block
的返回值在由名称指定的窗口上下文中执行闭包
window
- 用作上下文的窗口名称block
- 在窗口上下文中执行的闭包block
的返回值在所有规范闭包返回 Groovy 真值的窗口上下文中执行闭包。
specification
- 在每个窗口的上下文中执行一次的闭包,如果它为给定窗口返回 Groovy truth,则 block 闭包也会在该窗口的上下文中执行block
- 在窗口上下文中执行的闭包block
返回的每个窗口的值的列表,对于这些窗口,specification
返回 Groovy truth在所有规范闭包返回 Groovy 真值的窗口上下文中执行闭包。
options
- 用于传递附加选项的映射specification
- 在每个窗口的上下文中执行一次的闭包,如果它为给定窗口返回 Groovy truth,则 block 闭包也会在该窗口的上下文中执行block
- 在窗口上下文中执行的闭包block
返回的每个窗口的值的列表,对于这些窗口,specification
返回 Groovy truth在由名称指定的窗口上下文中执行闭包
options
- 用于传递附加选项的映射window
- 用作上下文的窗口名称block
- 在窗口上下文中执行的闭包block
的返回值