在Spock中,可以使用数据表来组织测试数据,并且通过条件选择数据表中的特定行来运行。以下是实现这个目标的步骤:
where
关键字定义表头和表体。def testData = where:
condition1 | condition2 | expected
true | true | "result1"
false | true | "result2"
true | false | "result3"
false | false | "result4"
@Unroll
注解来展开数据表中的每一行数据作为单独的测试用例,并使用 @Table
注解指定数据表。import spock.lang.*
class MySpec extends Specification {
@Unroll
@Table(testData)
def "test method with data table"(boolean condition1, boolean condition2, String expected) {
expect:
// 执行测试逻辑并断言期望结果
// ...
}
}
通过上述方式,在运行测试时,Spock会根据数据表的每一行数据生成对应的测试用例,并将表中的条件传递给测试方法作为参数。这样,可以根据特定条件选择数据表中的某些行来运行测试。
领取专属 10元无门槛券
手把手带您无忧上云