如何在安装程序中获取GebReportingSpec的测试名称

时间:2015-06-26 13:05:48

标签: spock

我正在使用GebReportingSpec。     我想获得将使用setup方法执行的测试名称。     我从testName.methodName得到空输出     我的代码片段如下:

class CRMAppLoginSpec extends GebReportingSpec {
@Rule
public TestName testName = new TestName()

setup()
{
   String methodName = testName.methodName;     
   println (methodName)
}
def "mytest"(String myName)
{
    given: "This is my test case in geb-spock"


    when: "capture the parameter"
    def var1 = myName

    then: "Display input parameter"
    println ("Welcome to geb-spock : ${var1}" )

    where:
    myName << ["Debasish", "Prashant"]
}

1 个答案:

答案 0 :(得分:0)

您应该从运行的代码开始。

查看有关在每个测试中处理错误的答案,它将向您展示如何在测试生命周期的每个阶段执行某些操作。 Answer

如果您正在尝试改进控制台报告,最好使用Spock的AbstractRunListener。 Check this out

您有迭代,其中每个方法名称都相同,您可以使用@Unroll批注来区分它们。

class TestSpec extends GebReportingSpec {
    @Rule
    public TestName testName = new TestName()

    def setup() {
        String methodName = testName.methodName;
        println(methodName)
    }

    @Unroll("Iteration: mytest #myName")
    def "mytest"() {
        given: "This is my test case in geb-spock"

        when: "capture the parameter"

        then: "Display input parameter"
        println("Welcome to geb-spock : ${myName}")

        where:
        myName << ["Debasish", "Prashant"]
    }
}