问题标签 [thucydides]

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 回答
1239 浏览

selenium - 如何处理 JBehave / Thucydides / Selenium 中的失败测试?

我对 Thucydides / JBehave 很陌生,但还没有找到任何解决方案。这是我第一次使用 Thucydides / JBehave,但之前使用过 Selenium。

我有我的 .story 文件。.story 文件列出了 5 个场景。每个场景都在它自己的 POJO java 类中实现。例如

ManagerSteps 类扩展了 net.thucydides.core.steps.ScenarioSteps,但除此之外它只是一个 POJO。ManagerSteps 调用页面对象 - 所有非常正常的东西,并且按照示例。

在上面的场景中,测试失败,因为代码显示错误消息而不是将用户返回到登录页面 - 很好,安全代码不满足指定的要求(还)但是,在 ManagerSteps 中的断言之后类失败,测试似乎停止。这意味着我有一个浏览器实例就坐在那里,直到我关闭它。当作为一系列测试运行时,这意味着 Selenium 网格中的一个浏览器现在已被占用。

我需要一种方法来检测测试失败,调用页面对象来关闭/退出。

我找不到始终运行的@Before 或@After 等价物,我可以找到它我可以使用@After 来关闭页面对象的webDriver。

我没有使用 Thucydides 来管理 WebDriver 生命周期,因为我找不到任何不使用 ThucydidesRunner.class 的示例。我必须使用 ThucydidesRunner.class 吗?我对与 JBehave 集成的 Thucydides 手册(http://thucydides.info/docs/thucydides/_writing_acceptance_tests_with_jbehave.html)的印象并不表明它是必需的。

在这种情况下,其他人如何处理测试失败?

0 投票
1 回答
63 浏览

java - thucydedes 测试以复制填充文本的文本区域

我正在编写一个因此的测试来复制一个场景,其中一个文本字段获得添加的值与某人在该文本区域中键入一个段落相同。

我的方法是在测试用例中创建一个循环。

问题是每次迭代的值都会消失,然后再以累积值重新出现。我可以实现这一目标的任何方法?

0 投票
1 回答
241 浏览

selenium-webdriver - 修昔底德没有启动任何浏览器

我正在尝试从原型“thucydides-jbehave-archetype”执行标准演示项目它在 Windows 7 机器上运行良好,但在 Windows 8 机器上,浏览器根本没有打开。在另一台机器上与 Firefox 和 chrome 一起工作的相同项目在 Windows 8 机器上失败了。请注意,修昔底德报告已成功生成,“easyb”原型的演示项目运行良好(并启动浏览器)

这是来自控制台的快照:

请注意,上述步骤已完全执行。

这是我的环境详细信息:- 操作系统:Windows 8 IDE:Eclipse Juno Maven 运行时:apache-maven-3.2.1 Java 版本:1.7

0 投票
1 回答
100 浏览

selenium-webdriver - 最新的修昔底德 Javadoc

官方的Thucydides 文档站点目前正在引用这些javadocs - thucydides 0.9.18-SNAPSHOT API,这对我来说看起来不是最新的。

例如,到目前为止,它还没有与 jbehave 相关的软件包。

我们是否需要等待更新的 javadocs 或者我需要在其他地方寻找最新的 Javadocs?

请更新。

0 投票
2 回答
1180 浏览

java - 修昔底德:从头开始安装原型 - 跳过所有测试

我到处寻找答案。看来修昔底德的文档非常有限和/或他们没想到人们会这么早就遇到问题。我主要关注有这个过程的http://thucydides.info/docs/thucydides-one-page/thucydides.html 。

我通过创建一个新项目

并选择net.thucydides:thucydides-simple-archetype

安装后,我去我settings.xml所在的位置/home/user/.m2/settings.xml并输入:

并运行

我得到:

什么都没有发生?测试已设置,它们不是 @Pending 或任何东西,它们只是被完全忽略。这是默认提供的 SearchByKeywordStoryTest.java:

我很感激任何帮助。我不知道我错过了什么 - 我是 maven、selenium 和 thucydides 的新手,所以我确定我做错了什么。一旦我让 JUnit 测试真正运行,我就可以开始了……谢谢。

0 投票
0 回答
521 浏览

maven - 修昔底德的并行测试执行

您如何在 thucydides 中执行并行测试?我尝试设置 Dthucydides.batch.count (和 Dthucydides.batch.size,因为有人提到该计数现在是大小?),Dthucydides.batch.number,将标签放在我项目的 .pom 中的故障安全插件中,使用Maven故障安全插件中的fork选项,但没有任何作用。它会一个接一个地执行测试。

我用来按要求执行测试的 mvn 插件:

0 投票
1 回答
347 浏览

java - Why WebElement and List are processed not in the similar way via xpath and List is always null?

I'm using Thucydides 0.9.229 with Selenium shipped with it. To obtain some webelements I try to get them via List

with no result, the placement is returned null, while here

there placement is not null, but the correct webelement handled well. As far as I understand, the firs example should return the 1-value list anyway, but even more values if there were some additional elements fitting the criteria. So, what is wrong, why I can't get the list of webelements there?

0 投票
1 回答
356 浏览

java - 结合元参数和示例表时如何解决jbehave错误

我正在使用由 0.9.229 thucydides-jbehave 原型制作的项目。在这里,我有一些 jbehave 故事:

当 Example table 与 meta 共存时,步骤 F 中会发生错误。正如调试器所揭示的,传递给底层方法的值

in<reg1>实际上不是 Meta 中的 @reg1 值,而是……示例的“数字”值。而不是传递的值<registrator1>实际上是从不清楚的经度值。所以,问题是我如何在同一个故事和同一个场景中正确地将 Meta 与 Example 结合起来?

0 投票
1 回答
128 浏览

scalatest - 修昔底德 + ScalaTest

我发现 scalatest 的 HTML 报告器非常基本。我想要修昔底德之类的东西或其他东西。有没有人有经验或指针或在哪里可以找到有关如何整合它们的信息?

0 投票
2 回答
731 浏览

selenium - 如何设置 webdiver 在后台执行操作?

我目前在自动化 QA 工作。我们的项目使用 Java:jbehave、thucydides、selenium。我们正在使用 Ubuntu 操作系统。

每次我运行测试时,我都必须停止做所有事情(编码、浏览网页),因为每次单击或 selenium 的任何操作都会使驱动程序窗口(我们正在使用 chrome 驱动程序)成为焦点(使窗口处于活动状态),如果我做一些我搞砸了测试的事情。我们的团队因此浪费了很多时间。

我们已经尝试过 Phantomjs,它不能正常工作,找不到元素等......而且使用 vagrant 在虚拟机中运行测试也不适合我们(出于公司特定原因)。

如果 Chrome 驱动程序在启动时会接管活动窗口,那很好,只要它会继续在后台执行不同的操作。奇怪,但在我之前的项目(windows,c#,mstest)中,chromedriver 的行为与此完全相同,无需任何额外设置。请帮忙,我知道很少有其他团队有这个问题。似乎这个问题只在 Mac 和 linux 上。