问题标签 [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.

0 投票
1 回答
1127 浏览

junit - Arquillian 无法在 Glassfish 嵌入式容器上注入本地或远程 EJB

我使用 Arquillian 测试具有显式本地和远程接口的 EJB。但在测试中,Arquillian 不会在具有本地接口或远程接口类型的字段中“注入”任何内容。

我使用嵌入的 Glassfish 作为服务器进行测试,我使用 junit4。

我用了 :

  1. @EJB,
  2. @Inject,
  3. @EJB(lookup="java:global/costa-services-depa/GreeterImpl!es.costa.GreeterLocal"),
  4. @EJB(lookup="java:global/costa-services-depa/GreeterImpl!es.costa.GreeterRemote")

使用 (2) even for GreeterImpl, or GreeterLocalorGreeterRemote它给了我错误Could not inject members

使用 (1,3,4) 我得到一个java.lang.NullPointerException,这意味着 EJB 没有被注入。

这是我的代码的一部分:

这是glassfish-resources.xml

这是test-persistence.xml

这是arquillian.xml

这是jbossas-ds.xml

关于 Glassfish Embedded 和 Arquillian 和 Junit 的依赖关系:

在控制台中,我注意到:

注意:默认情况下部署为测试应用程序还是不作为我制作的“costa-services-depa”?

要知道在 EJB 的调用路径中我放置了 test 而不是 costa-service-depa 但它总是给我同样的问题(NullPointerException)。

0 投票
1 回答
374 浏览

selenium-webdriver - 如何配置 arquillian-drone 在 Firefox 中禁用 JavaScript

我想在禁用 JavaScript的 Firefox 中运行我的测试,所以我创建了一个限定符:

我在文件中添加了扩展名arquillina.xml

当然,这个配置不会禁用 JavaScript,你能给我一个例子来说明如何做到这一点吗?

我用:

  • 摇篮 2.3
  • arquillian-junit-container 1.1.8
  • arquillian 无人机 2.0.0
  • 硒 2.45.0
0 投票
2 回答
387 浏览

configuration - arquillian-drone-graphene 功能测试的良好配置是什么?

我找不到使用 arquillian-drone-graphene 进行 JEE7 Web 应用程序功能测试的良好配置。注意:我可以在 Arquillian 测试套件中运行 CDI 和 EJB 测试;他们工作正常。我的 POM.xml 如下:



我的 arquillian.xml 如下:

有人可以建议我为 wildfly-8.2.0.Final + arquillian + Drone + Graphene 功能测试 POM 提供一个好的配置吗?

注意:使用上述配置,我的功能测试总是以以下错误跟踪结束:

0 投票
1 回答
182 浏览

input - 为什么 Graphene WebDriver 测试浏览器实例中不显示 JSF UI 组件?

我想知道为什么我的 JSF 2.2 UI 输入组件没有在我的 Arquillian Drone Graphene WebDriver 的测试浏览器实例中呈现。我的测试页面如下:

我的 Arquillian 无人机测试课程如下:

并且所有这些结果(在运行 maven 测试中)进入以下 WebDriver 测试浏览器

在此处输入图像描述

为什么 JSF 没有在这个测试浏览器中呈现?

0 投票
1 回答
142 浏览

xpath - 使用 XPATH 定位 WebElement (NoSuchElementException)

我在尝试使用 Arquillian Drone + Graphene 编写自动化 webUI 测试时使用 xpath 定位元素时遇到问题。为了弄清楚我试图在谷歌主页上找到搜索按钮。即使我没有完成。既不是绝对的也不是相对的xpath。

但是,我可以使用 ID 或 xpath 字符串中包含 ID 来定位元素。但仅当 ID 为真实 ID 且未生成时。例如在 google 主页上: google-logo 有一个真实 ID“hplogo”。我可以通过直接使用 ID 或 xpath 表达式中的 ID 来定位此元素。

为什么可以使用 ID“hplogo”定位 google 徽标,但在使用绝对 xpath 时会失败"/html/body/div[1]/div[5]/span/center/div[1]/div/div"?我真的很困惑。我究竟做错了什么?任何帮助表示赞赏!

编辑

WebElement e = browser.findElement(By.xpath("/html/body/div[1]/div[5]/span/center/div[1]/div/div")); 导致 NoSuchElementException。

0 投票
0 回答
1488 浏览

classnotfoundexception - java.util.ServiceConfigurationError:javax.servlet.ServletContainerInitializer:未找到提供程序 org.omnifaces.ApplicationInitializer

我的问题可能看起来像这个问题的重复。(但我不认为那里发布的答案是它的解决方案)即。当 Omnifaces-2.1 依赖项添加到我的应用程序的 POM 中时,Wildfly 8.2.0.Final Embedded Container 上的 Arquillian-Drone 测试失败并出现以下错误/异常跟踪。

此跟踪表明,创建测试存档时未加载 Omnifaces 库,但为什么呢?但是,相同的 POM 配置在 Wildfly 8.2.0.Final Remote 和 Managed 测试容器上完美运行。我坚持要为 Wildfly 8.2.0.Final Embedded 容器提供解决方案。有没有人完成了这个问题的解决方法?

0 投票
1 回答
162 浏览

selenium - 在基于 Web 的测试中自动验证 HTTP 身份验证

我正在与 Arquillian Drone 和 Graphene 合作,为我们的 Web 应用程序编写基于 Web 的测试。Web 应用程序使用 HTTP 身份验证。当我开始测试时(我目前使用的是 FirefoxDriver,但我想它与其他所有驱动程序都一样),这个登录弹出窗口似乎输入了凭据:

登录

然后测试暂停并等待,直到我手动输入凭据。如何使测试自动使用声明的凭据并登录网页?

0 投票
1 回答
682 浏览

selenium - 将 Arquillian 无人机与 Selenium Grid 结合使用

我使用 Arquillian Done 为我的基于 Web 的应用程序创建了一套功能性 UI 测试,我想在 Selenium Grid 上运行,而不是在本地运行它们。

我遇到的问题是,尽管在arquillian.xml文件中设置了 Selenium 集线器服务器的主机/端口详细信息,但 UI 测试是在本地而不是在 Selenium 节点之一上执行的。我什至尝试输入不存在的主机的详细信息,但测试仍在本地运行并且没有生成错误消息。看起来 Drone 似乎忽略了arquillian.xml文件中的配置。

我在arquillian.xml文件中的配置有问题,还是我做错了什么?不幸的是,似乎很少有关于将 Arquillian Drone 与 Selenium Grid 结合使用的文档。

文件内容arquillian.xml如下:

我的 Maven pom.xml 文件包含以下依赖项和依赖项管理部分:

0 投票
1 回答
120 浏览

model-view-controller - 如何使用 Tomcat 8 + JSF 2.2 进行 JUnit 测试?

我想知道怎么JUnit testsTomcat 8 + JSF 2.2?我可以测试什么样的东西JUnitview?, ? model, control?

为了制作测试用例,我是否必须使用另一个 JUnit 工具?

谢谢。

0 投票
1 回答
169 浏览

jakarta-ee - Arquillian Graphene/Drone 测试使用错误的端口访问 WebLogic 托管服务器

我正在使用 Arquillian 为我的一个项目执行集成测试,并发现当应用程序部署到 WebLogic 12c R2 容器时,Arquillian Graphene/Drone 使用了错误的端口号来执行浏览器测试。测试启动浏览器时,使用分配给 WebLogic 管理服务器的端口,而不是分配给 WebLogic 托管服务器的端口,这意味着容器返回 HTTP 404 错误,导致测试用例失败。

我已经研究了各种 Arquillian 组件的代码,并且我相信我已经找到了问题的根本原因。问题似乎出在“wls-common”模块的RESTUtilsdeploy(CommonWebLogicConfiguration config, Logger logger, Archive<?> archive)类中,该模块包含负责将存档部署到 WebLogic 托管服务器并将其ProtocolMetaData返回给 Arquillian 的方法。Arquillian Graphene/Drone随后ProtocolMetaData使用它来访问网页。

在此方法中是 HTTPContext httpContext = new HTTPContext(adminUrl.getHost(), adminUrl.getPort());用于构建ProtocolMetaData对象的以下代码行。这意味着正在使用管理端口,而不是分配给托管服务器的端口。

假设我已经正确确定了根本原因,我不相信这个 Arquillian 容器适配器可以与 WebLogic 12c R2 一起使用,这让我觉得我可能试图错误地使用这个适配器。

我的 POM 文件中 WebLogic 容器适配器的 Maven 依赖项如下:

我的 arquillian.xml 文件中的条目如下:

我使用的 WebLogic 版本是 12.2.1

我的问题是我在尝试使用此容器适配器部署到 WebLogic 12c R2 容器时是否遗漏了什么?有其他人成功使用此适配器吗?

由于 WebLogic 容器在单独的主机上运行,​​我相信我需要使用 REST 适配器而不是远程适配器,因为远程适配器似乎需要 Arquillian 测试与 WebLogic 容器在同一主机上运行。