问题标签 [serenity-bdd]

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

serenity-bdd - Serenity BDD cucumber - 有没有办法避免过度写入报告文件夹?

目前,当生成报告时,它会覆盖先前运行的报告文件夹。是否可以通过传递这样的内容来指定文件夹名称中的时间戳?

serenity.outputDirectory=reports\&Now() 在 serenity 属性文件中。

我可以编写代码,在运行时将报告文件中的任何文件移动到新生成的目录。这里的挑战是,我们不知道生成报告的点。

0 投票
1 回答
1277 浏览

selenium-webdriver - 配置默认 WebDriver Serenity Jbehave

实际上,我在尝试更改默认 webdriver 以获得宁静时正在苦苦挣扎。实际上我想在硒网格上运行我的测试。然后我在扩展 PageObject 的类上添加以下代码:

但它不工作。它给出错误空指针异常。请有人给我建议如何在 Serenity 上设置硒网格?谢谢。

0 投票
1 回答
2654 浏览

excel - Serenity+Cucumber:从 Excel 中读取测试数据

我正在使用@RunWith(CucumberWithSerenity.class). 我们希望在 Excel 工作表中单独公开和维护测试数据,而不是将其放在功能文件中。

Excel 测试数据的模板如下所示:

我们选择使用主键作为“场景”,它将出现在功能文件和 Excel 工作表中,基于此,我们将从 excel 中读取特定行并将特定行数据引用为该特定场景的测试数据。

问题:

  1. 有没有办法在运行测试时从功能文件中获取场景名称,以便我们可以获取 Excel 工作表并从 Excel 工作表中提取数据?
  2. 上述用例中是否有可用的默认方式/方法,以便我们可以将其用于上述用例?
0 投票
0 回答
357 浏览

java - 使用 Gradle 和 Serenity Bdd 从 Intellij 命令行运行 jUnit 测试时出错

使用以下命令从命令行运行jUnit测试时,我经常遇到以下错误:Intellijgradlew clean test aggregate -Dtags="domain:SmokeTests"

The page object class de.telekom.commtech.bart.pages.common.TelekomLandingPageObject looks dodgy: Failed to instantiate page (net.thucydides.core.webdriver.UnsupportedDriverException: Could not instantiate class org.openqa.selenium.firefox.FirefoxDriver) de.telekom.commtech.bart.steps.AbstractScenarioSteps.getTelekomLandingPageObject(AbstractScenarioSteps.java :52) de.telekom.commtech.bart.steps.inbox.AuthNavigationSteps.landingPageShouldAppear(AuthNavigationSteps.java :245) de.telekom.commtech.bart.testcases.BaseTest.login(BaseTest.java :447) de.telekom.commtech.bart.testcases.adressbook.lefthandnavigation.AdressBookContactsGroupTestCase.setup(AdressBookContactsGroupTestCase.java :46)

我使用最新版本的Serenity Bdd (1.1.42)andFirefox 47.0.2 如果我使用 运行单个测试Run Configuration,我不会收到该错误。我尝试将 Firefox 版本降级为45.0,但效果相同。我还能尝试什么?

编辑build.gradle文件如下所示:

0 投票
2 回答
1391 浏览

junit - 参数化运行期间测试@Title 更改的宁静

从 net.thucydides 示例源上的 Program Creek 中,我找到了一个在我的 JUnit 类中更改测试名称的解决方案,但它不起作用。我的报告中仍然有一个测试名称(如图片链接所示)

只有 1 次测试

我的最终目标是多次运行相同的 Maven-Serenity JUnit 测试并报告来自名为“testCase”的 spreadSheetData 的参数提供的唯一 Testname 也许我的解决方案根本没有改变,希望很清楚我想。

有人可以帮助我前进吗?

我的代码片段如下所示:

0 投票
1 回答
901 浏览

intellij-idea - 带有 JUnit 的 Serenity BDD - 报告未格式化

我刚刚使用junit创建了一个运行良好的宁静项目,但生成的报告没有格式。见下文。当我使用黄瓜创建一个宁静的项目时,报告的格式符合预期。是否需要完成任何其他步骤才能正确显示报告。我所做的就是使用 maven (mvn archetype:generate -Dfilter=serenity) 创建项目。然后将其导入 IntelliJ 并运行它

报告样本.

我的 POM 文件是

http://maven.apache.org/xsd/maven-4.0.0.xsd">4.0.0

0 投票
2 回答
12491 浏览

serenity-bdd - 通过 Junit 执行测试时生成 Serenity 汇总报告

我正在使用 Junit 运行 Cucumber+Serenity 测试:

代码片段:

对于每个测试执行,都会生成单独的 html 报告,但不会直接使用 HtmlAggregateStoryReporter 生成聚合(组合)报告(参考:https ://github.com/serenity-bdd/serenity-core/issues/244 )

这是我使用的代码片段,它被挂起并且聚合未完成。我在所有 Cucumber+Serenity 测试完成后调用:

C:\PoC-Test\target\site\serenity\ 是生成各个测试报告的位置,您能帮我找出这段代码有什么问题吗?

请分享任何示例工作代码,如果有的话?

0 投票
1 回答
576 浏览

java - 如何调试 Firefox 警报框自动关闭并且无法检测到 Serenity BDD 中的警报?

[main] 错误 net.serenitybdd.core.Serenity - 不存在警报(警告:服务器未提供任何堆栈跟踪信息)

我的问题与“使用 Selenium WebDriver 未检测到 Firefox 警报框”完全相似

但我无法找到解决方案。即使我尝试了各种等待,更改了 Firefox 版本并尝试了共享链接中提到的解决方案。但是,要么我无法实现它,要么它不起作用。

当我单击更新按钮时,手动执行此任务时会弹出它,它工作正常。

但是,当我使用自动化弹出显示执行相同操作并立即在几分之一秒内自动关闭时,serenity 会抛出未找到 No Alert 的错误。此外,自动化期间出现的警报窗口与手动执行期间出现的警报窗口略有不同。如果您想查看 Windows 中的差异,请参阅上面共享的链接。

0 投票
0 回答
1848 浏览

serenity-bdd - Serenity 聚合未在正确的文件夹中生成结果

运行以下 gradle 命令时

.\gradlew.bat clean test aggregate -Dserenity.outputDirectory=reports/report_20160612_103558

结果没有生成到“report_20160612_103558”中,而是一半存储在“reports”文件夹中,另一半存储在“report_20160612_103558”中。添加结果的屏幕截图

Index.html 是空白的,表示没有执行测试,执行测试的地方

serenity.propertiesI haveserenity.outputDirectory=reports中,运行上述 grade 命令时应将其覆盖。请建议我是否必须进行任何更改,并让我知道更多详细信息。

从 serenity.properties 中删除 serenity.outputDirectory=reports 并运行命令仍然没有改变行为。

0 投票
1 回答
684 浏览

spring-boot - 带有spring boot随机端口号的serenity bdd默认url

在使用 Serenity 进行的测试中,我正在使用随机端口启动我的 Spring Boot 应用程序。

在某些时候,我需要使用这样的 PageObject:

问题是:如何在 PageObject 中注入随机端口号?

我想以某种方式用 Spring Boot 测试提供的随机端口替换 8080 (这是默认端口)。