spring - Spock Stepwise-一次失败后继续运行测试套件

标签 spring grails spock geb

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

最佳答案

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

循序渐进

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
  • 关于spring - Spock Stepwise-一次失败后继续运行测试套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30977091/

    相关文章:

    java - 在 Jenkins 上部署 Spring Boot 应用程序

    spring - 为什么我们需要 jackson 数据绑定(bind)?

    spring - @JsonIgnore 和 @JsonIgnoreProperties 有什么区别

    unit-testing - chalice 2.4.4 : How do mock a transient service inside a domain?

    java - 类的构造函数参数是否也应该使用 Java Bean Validation API 注释进行注释?

    ssl - 如何允许本地主机上的 Grails 3 应用程序使用 HTTPS?

    grails - Grails属性

    testing - 使 Grails Geb 测试具有事务性

    unit-testing - 如何使actionName可用于单元测试

    grails - 在集成测试中模拟SQL View 结果