问题标签 [arquillian-drone]
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.
selenium-grid - 无法使用 selenium 网格从 arquillian.xml 传递 DesiredCapabilities
无法使用 selenium 网格从 arquillian.xml 传递 DesiredCapabilities
- 在没有硒网格的情况下执行所需的功能并按预期工作
- 使用 Remote WebDriver 进行调试表明它具有预期的 DesiredCapabilities(附加检查屏幕),但是当浏览器启动时,它在没有功能的情况下启动
- 最初我的想法
<property name="chromeExperimentalOption">
有问题,但是当我添加时<property name="chromeArguments">-start-maximized</property>
,它并没有很好地工作。没有 Grid 两者都有效。
selenium - 粘贴后如何直接显示/渲染 XHTML 源代码?
在我目前使用的 Arquillian 中,使用 Graphene(包装 Selenium)在调试器中调试功能测试非常有意义,WebDriver.getPageSource
它允许轻松地将 XHTML 代码复制到剪贴板中。但是,我需要在编辑器中创建一个临时文档,保存文件并在浏览器中打开它。
是否有任何浏览器或网站允许粘贴 XHTML 源代码并呈现(直接或在 IFrame 中)?
docker - 为什么我的 Arquillian Drone 功能测试在 GitLab CI 上不起作用?
在 gitlab.com 的 GitLab CI 共享运行器上本地运行良好的测试失败(MCVE 位于https://gitlab.com/krichter/gitlab-ci-file-creation,日志位于https://gitlab.com/krichter /gitlab-ci-file-creation/-/jobs/40064276),因为在提取 Arquillian webdriver 期间,无法创建目录或被 Java 认为不存在目录(请参阅下面的详细信息):
我在用着
并激活配置文件。
phantomjs-2.1.1-linux-x86_64.tar.bz2
我从http://phantomjs.org/download.html下载、提取和调查并验证其中phantomjs-2.1.1-linux-x86_64/examples/colorwheel.js
存在。Arquillian Drone Webdriver 使用 MD5 和1c947d57fce2f21ce0b43fe2ed7cd361
作为目标目录,与下载的目录匹配.tar.bz2
。
该错误位于 Arquillian Spacelift 中,Arquillian Drone 使用它来提取 phantomjs 驱动程序,您无法从堆栈跟踪中看到它,因为 Spacelift 忽略了目录创建失败(请参阅https://github.com/arquillian/arquillian-spacelift /pull/34获取详细信息和建议的修复程序,您可以通过指定来使用
在main
工作中.gitlab-ci.yml
并在 POM 中将 Spacelift 依赖项从 1.0.2 更改为 1.0.3-SNAPSHOT。
以与上述相同的方式更改 Spacelift 源并添加显式目录创建和触摸语句,甚至在 Java 中使用 Python 以确保目录是使用
导致0
s 被打印为返回码,但目录与相对路径一起使用会在 Java 代码中失败。
我尝试了docker images ubuntu:xenial
、ubuntu:trusty
、ubuntu:artful
和. Afaik 只有基于 Linux 的系统可以用作 docker 镜像。我不希望通过测试更多图像来获得更多洞察力。debian:sid
debian:buster
我经历了
但我认为这与该问题无关,因为不涉及网络文件系统,并且由于构建以root
用户身份运行,因此在获得权限期间不使用名称解析。
jboss-arquillian - 如何在 Graphene 2.3 上制作 MavenImporter
我正在使用基于 jsf 的 Web 应用程序,并且我进行了一些使用 Arquillian 的功能测试。
我的 pom 文件的依赖项如下
我的部署方法从以下行开始
一切正常,但在 createDeployment 方法的第一行将 graphene-webdriver 依赖项从 2.2.1 更新到 2.3.2 后,会引发异常。
我做错了什么?你能帮助我吗?谢谢
jakarta-ee - “无法在 60 秒内检索无人机实例”
我正在使用一本名为Workshop Java EE 7 的德语书学习 Java EE 7,它基本上需要一个人手动构建一个正在运行的示例应用程序。在本书的第二个“迭代”中,正在定义集成测试(GitHub 分支)。但是,我无法让它们运行。当我启动 WildFly 然后执行mvn verify
时,Firefox 打开时显示“没有可用的窗口”,60 秒后,它崩溃并且我得到一长串错误(见下文)。我一直在谷歌搜索所有的错误消息,尽管在各种平台(包括 StackOverflow)上讨论了许多类似的问题,但我找到的答案都没有解决我的问题。由于作者在网上提供了整个项目,我可以指出代码的相关部分:
我希望你能帮助我解决这个问题,特别是因为我确信它也与本书的许多其他读者相关,这本书是 amazon.de 上的顶级 Java EE 书籍之一。非常感谢您!
我正在使用 macOS 10.12、Java 8、WildFly 8.1.0 和 Firefox 57。
在下面找到错误消息的缩短控制台输出:
在下面找到错误消息的完整控制台输出:
maven - 如何在 Arquillian 功能测试中使用 Maven 耳朵神器?
到目前为止,我遇到的所有示例都使用 Arquillian@Deployment(testable = false) public static Archive<?> createDeployment()
构建自己的WebArchive
,或者EnterpriseArchive
允许以快速和独立的方式测试应用程序的各个部分。但是,据我了解,在阶段完成后直接从 Maven 中测试生成的 EAR(在多模块 Java EE 设置中)也是有意义的install
,即在 EAR 组装之后运行的单独模块中,例如
这样人们就可以像这样进行测试
这当前失败,因为注入的部署 URL 忽略了context-path
导致请求index.xhtml
失败的应用程序,因为The requested resource is not available
HTTP 错误 404。
有趣的是,EAR 的 Web 模块存在于本地 Maven 缓存安装中,但在清单中却没有。在明确添加它之后仍然是这种情况,retValue.addAsModule(Maven.configureResolver().workOffline().resolve("richtercloud:arquillian-ear-it-web:war:1.0-SNAPSHOT").withTransitivity().asSingle(WebArchive.class));
然后我根本不明白。也许我误解了 Shrinkwrap 正在解决的问题。
版本是
SSCCE arquillian-ear-it说明了这个问题。
java - 使用 @RunAsClientSide 注释的测试方法和容器内测试方法的 Arquillian Drone 测试使用 NoClassDefFoundError 运行
使用 Drone 和 Graphene的 Arquillian-Guide功能测试说,可以“在同一个测试中混合容器内模式和客户端模式”。我正在尝试运行这个小例子:
testclientSide() 通过没有问题。但是 testContainerSide() 运行
一旦我将具有传递性的 selenium-chrome-driver 依赖项添加到部署中(取消注释 createDeployment()-Method 中的行),它就会起作用。但是我看不出将 Selenium 添加到容器部署中的意义,因为它应该只在客户端需要。
谁能告诉我为什么 testContainerSide() 方法正在寻找 org.openqa.selenium.WebDriver ?
java - Arquillian Graphene waitModel TimeoutException 让测试以错误而不是失败结束
我认为我的问题与代码无关,而是与一般测试中等待 UI 元素或至少我对使用 JUnit 和 Selenium/Arquillian Graphene 测试 UI 的理解有关。
当使用 Arquillian Graphenes waitModel()(或任何其他等待 UI 元素的方法)并且元素在指定的超时后不存在时,我得到一个 seleniumTimeoutException,这让我的 JUnit-Test 以“错误”结束。
有没有更好的方法让测试以“失败”结束,而不用像这样的 try/catch 块包围我的测试的每一行:
selenium - 在 testng/arquillian/drone/graphene 和绕过 arquillian.xml 方面需要帮助
让我设置我的测试环境。我们从命令行在虚拟机上运行我们的测试。从命令行运行 testng.xml。不能通过它传递参数。我们有一个包含所有运行时参数的 test.properties,并通过它设置浏览器类型、版本、主页 URL 等。我们目前正在使用页面对象。
我们有一个所有 pageTests 都继承自它的 functionalTest.java,它解析 test.properties 并为 600 次测试的特定运行设置所有参数。我想转换为使用 Arquillian/Graphene/Drone,但我很难在我的环境中设置它。
我不能使用 arquillian.xml,因为每次运行都会有所不同,而且我无法为每次运行附加不同的文件。因此,我需要相信在我的functionalTest.java 中为所有内容设置系统属性。到目前为止,我已经尝试过:
// 文件 :FunctionalTest.java 包测试;
// 文件 :HomePageTest.java 包测试;
// 文件 :HomePage.java 封装页面对象;
运行 OpenUrlTest 会产生“缺少 arquillian.xml”错误。如果我放入一个 arquillian.xml,我所做的任何事情都不会覆盖浏览器类型。有什么帮助吗?
格雷格
java - 在 Arquillian 中实例化 webdriver 后如何调用 @BeforeSuite
我正在尝试在 Arquillian 中实例化 webdriver 后使用 @BeforeSuite
我只是在下面举一个例子
但是由于驱动程序没有实例化,它得到了空指针异常。所以我的问题是如何在 Arquillian 定义 @BeforeSuite 之后调用我的 @BeforeSuite。
我不想做 webdriver 实例化部分,我更喜欢它应该由 Arquillian @Drone 注解处理,之后我将执行我自己的 @BeforeSuite。