问题标签 [geb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
testing - 如何让 WebDriver 关闭 Firefox 安全警报?
我正在使用 spock、geb 和 WebDriver 编写测试脚本。该脚本在不安全的页面上提交表单。该页面提交到安全的 HTTPS URL。Firefox 对此显示警告,特别是:
这会导致以下错误:
如果出现此警报,我如何让 WebDriver 消除它?
grails - 在 Geb 中,displayed 和 present 有什么区别?
我正在编写功能测试并处理淡入淡出的模态窗口。
显示和呈现有什么区别?
例如我有:
其中 settingsModule 代表我的模态窗口。
在测试我的模态窗口(来自 Twitter 引导程序的模态窗口)时,我通常这样做:
不断地。在我的模块中,我有:
我总是抱怨:“必须显示元素才能点击”。
在我的 openSettingsModal 和 closeSettingsModal 中,我尝试了许多 waitFor 与时间间隔的组合以及是否使用存在......无法弄清楚。
任何指针将不胜感激。谢谢!
grails - 如何在 grails 中运行 spock 功能测试的子集?
在其他一些测试框架中,我习惯于标记测试,例如@really_slow、@front_end
然后运行不同批次的测试,比如我可能想要设置一个构建从属来运行所有的 real_slow 测试,并且可能想要运行所有标记为前端但没有标记为非常慢的测试。
目前,要在 grails 中运行我的 spock+geb 测试,我只需运行 grails test-app functional:
我如何告诉它运行一个子集?
selenium - geb StaleElementReferenceException
我刚刚开始使用带有 webdriver 的 geb 进行自动化测试。 据我了解,当我在页面上定义内容时,每次调用内容定义时都应该查找页面元素。
所以在这段代码中,我认为$('.loading')
应该重复调用,以在模块的基本元素的上下文中通过其选择器在页面上查找元素。然而,此时我有时会遇到 StaleElementReference 异常。据我所知,该元素不会从页面中删除,但即使这样做,除非$
在幕后进行一些缓存,否则不应产生此异常,但如果是这种情况,它会导致各种其他问题。
有人可以帮我理解这里发生了什么吗?为什么在查找元素时可能会得到 StaleElementReferenceException?指向相关文档或geb源代码的指针也很有用。
selenium - Geb - 在 iFrame 内单击按钮转换到新页面
我是 Geb 的新手。对不起,如果我的问题不正确。
我正在尝试单击 iFrame 内的按钮CompaniesListPage
并尝试转换到AddCompanyPage
.
使用 iFrame 外部的常规按钮,我可以执行
loginButton (to: CompaniesListPage){$("input", id:"loginButton")}
在 loginButton 单击时从 LoginPage 转换到 CompaniesListPage。
但是,使用 iFrame 内的按钮,我不知道如何实现这一点
在 CompaniesListPage 上,我试过这个
然后我明白我对 addCompanyButton 的声明应该是不正确的,我想要从该页面中单击并继续前进。
所以,在测试用例上,我做了一个
这行得通。但是,由于页面已经移动到AddCompanyPage
现在并且想要处理它,我尝试了page (AddCompanyPage)
这抛出一个
geb.error.UnresolvablePropertyException: Unable to resolve AddCompanyPage as content for CompaniesListPage, or as a property on it's Navigator context
PS:如果有帮助,请告诉我。
grails - Grails --- 加载器约束违规
在我的一个应用程序中,我必须将 geb 与 grails 一起使用。我安装了 geb 插件并添加了依赖 selenium 独立 jar。
现在的问题是在我清理或编译时出现如下错误
交互模式退出并出现错误:加载器约束违规:当解析被覆盖的方法时,当前类的类"org.apache.xerces.jaxp.SAXParserImpl.getXMLReader()Lorg/xml/sax/XMLReader;"
加载器及其超类加载器()对于签名中使用的类型具有不同的类对象(使用 --stacktrace 查看完整跟踪)(instance of org/codehaus/groovy/grails/cli/support/GrailsRootLoader)
org/apache/xerces/jaxp/SAXParserImpl,
instance of <bootloader>
org/xml/sax/XMLReader
grails - 在 Grails 应用程序中使用 Spring Security 插件进行功能测试
我有一个带有 spring 安全插件的安全 grails 应用程序,现在我正在尝试对登录过程进行一些测试,但到目前为止还没有成功。有人知道问题出在哪里吗?
这是我的 LoginPage.groovy
这是使用junit4的测试:
AuthenticatedPage 是需要身份验证的页面,但此时无法使用 geb 进行身份验证。有人知道这个问题吗?
提前致谢!
java - GebConfig.groovy 和 Groovy ConfigSlurper 的 Geb 配置问题
我正在尝试启动并运行基于 Groovy 的浏览器自动化/测试框架,但在使基于 ConfigSlurper 的配置正常工作时遇到问题。
我的默认包中有一个 GebConfig.groovy 类,如下所示:
但是尝试运行脚本会导致以下错误:
我想我需要遗漏一些小而明显的东西。我在 Eclipse 中使用最新版本的 Geb (0.7.2) 和 Groovy 1.8。
geb - 如何将 FirefoxDriver 设置为 Geb 的驱动程序
这似乎有效:
但是我如何使用FirefoxDriver
而不是HtmlUnitDriver
?这只是启动 Firefox,但所有drive
指令都在HtmlUnitDriver
...中执行
selenium - Groovy 代码:要导入哪个库
我运行上面的脚本并得到以下错误:java.lang.NoClassDefFoundError: org/openqa/selenium/TakesScreenshot