我需要对一组数据运行测试,但我找不到一种方法在我的步骤中执行软断言,并在 Serenity 报告中的正确步骤中显示错误。
@Then("All my datas are correct")
public void verifyMyDatas(){
int[] myDataArray = new int[] {1,2,3,4};
for(int i = 0; i < myDataArray.length; i++){
mySteps.myAwesomeValidator(myDataArray[i]);
}
}
以及示例步骤:
@Step("Checking the value {0}")
public void myAwesomeValidator(int value){
//I need a soft assertion here
}
我尝试使用assertj框架。但我的问题是“我的所有数据都是正确的”步骤被正确标记为FAILURE,但所有子步骤“检查值X”都在Serenity的报告中标记为SUCCESSes。
我的测试代码 :
@Then("All my datas are correct")
public void verifyMyDatas(){
SoftAssertions softAssertion = new SoftAssertions();
int[] myDataArray = new int[] {1,2,3,4};
for(int i = 0; i < myDataArray.length; i++){
这是我的秘密。myAwesomeValidator(myDataArray[i],softAssertion);}
softAssertion.assertAll();
}
以及步骤:
@Step("Checking the value {0}")
public void myAwesomeValidator(int value, SoftAssertions softAssertion){
softAssertion.assertThat(value < 3).isTrue();
}
编辑:试图澄清我的尝试的问题
我会尝试用< code>as()来描述断言,而不是引入一个< code >步骤来查看它是否有效(我相信它应该有效):
@Then("All my datas are correct")
public void verifyMyDatas(){
SoftAssertions softAssertion = new SoftAssertions();
int[] myDataArray = new int[] {1,2,3,4};
for(int i = 0; i < myDataArray.length; i++) {
myAwesomeValidator(myDataArray[i], softAssertion);
}
softAssertion.assertAll();
}
public void myAwesomeValidator(int value, SoftAssertions softAssertion){
// use as() to describe the assertion
softAssertion.assertThat(value)
.as("awesomely validate value %d", value);
.isLessThan(3);
}
问题内容: 我希望打破PHP中的外部for / foreach循环。 可以在ActionScript中完成,如下所示: PHP等效项是什么? 问题答案: 对于2个嵌套循环: http://php.net/manual/en/control- structures.break.php
试图看到一个在Cucumber中使用软断言的工作示例。我有以下简单的特性和步骤定义,我故意使一些验证失败,但cucumber测试仍然显示“通过”。我是不是做错什么了。 @给定(“^I have a Scenary for Soft Assert$”)public void i_have_a_scenario_for_soft_assert()throwsable{
我试着 我在调试时获得和是。 如何在使用时断言大于条件
问题内容: 尽管我知道问这个问题会有点愚蠢,但我仍然想查询有关它的技术观点的更多信息。 无限循环的简单示例: 如何从此类外部中断(停止)此无限循环(例如,在继承的帮助下)? 问题答案: 即使写这篇文章我也觉得很脏,但是… 从不同的线程,你可以调用一个实现,抛出一个当你调用。
有一个excelsheet,其中所有URL(16)都列在一列中。现在,一旦页面加载,需要验证页面标题是否与excel中已存储的预期标题匹配。我可以使用for循环执行它。如果全部通过,它将运行所有URL,但如果失败,它将停止运行。我需要完整地运行它,并给出一份通过和失败的报告。我编写了以下代码。 请在这方面帮助我。
本文向大家介绍易语言判断循环首命令使用讲解,包括了易语言判断循环首命令使用讲解的使用技巧和注意事项,需要的朋友参考一下 判断循环首命令 操作系统支持:Windows、Linux、Unix 所属类别:流程控制 本命令根据提供的逻辑参数的值,来决定是否进入循环。如果提供的逻辑参数值为真,程序顺序执行下一条命令进入循环,否则跳转到本命令所对应的“判断循环尾”命令的下一条命令处以跳出循环。 语法: 无