Spock Stepwise - 单一失败后保留 运行 测试套件

Spock Stepwise - Keep running testsuite after single failure

当使用 Spock @Stepwise 注释时,是否有任何方法可以将其配置为在单个测试失败后不会使整个测试套件失败?

决定只创建一个名为@StepThrough 的新扩展。我需要做的就是将 StepwiseExtension 子类化,并删除使整个测试套件失败的代码行。下面粘贴代码...

StepThrough.groovy

package com.test.SpockExtensions

import org.spockframework.runtime.extension.ExtensionAnnotation

import java.lang.annotation.ElementType
import java.lang.annotation.Retention
import java.lang.annotation.RetentionPolicy
import java.lang.annotation.Target

/**
 * Created by jchertkov on 6/22/15.
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@ExtensionAnnotation(StepThroughExtension.class)
public @interface StepThrough {}

StepThroughExtension.groovy

package com.test.SpockExtensions

import org.spockframework.runtime.extension.builtin.StepwiseExtension
import org.spockframework.runtime.model.SpecInfo

import java.lang.annotation.Annotation

/**
 * Created by jchertkov on 6/22/15.
 */
public class StepThroughExtension extends StepwiseExtension {
    public void visitSpecAnnotation(Annotation annotation, final SpecInfo spec) {
        sortFeaturesInDeclarationOrder(spec);
        includeFeaturesBeforeLastIncludedFeature(spec);
    }
}

备注:

  • 我将代码放入一个名为 com.test.SpockExtensions 的包中。您将需要对任何您想要的名称执行相同的操作。
  • Java 用户 - 只需将文件类型从 .groovy 更改为 .java