如何 运行 使用带有动态标签的 Maven 进行空手道测试
How to run Karate tests using maven with dynamic tags
我想使用 Maven 执行空手道测试并将标签动态传递给执行。我正在使用 junit4,我尝试了两种方法 - 并行和简单的 @RunWith 注释。
@RunWith
package karate;
import com.intuit.karate.KarateOptions;
import com.intuit.karate.junit4.Karate;
import org.junit.runner.RunWith;
@RunWith(Karate.class)
@KarateOptions(features = "classpath:karate")
public class KarateTestIT {
}
使用这种方法,我可以动态地将标签传递给执行,但如果空手道测试失败,maven 构建仍然成功。
平行
package karate;
import com.intuit.karate.Results;
import com.intuit.karate.Runner;
import org.testng.annotations.Test;
import static org.junit.Assert.assertTrue;
public class KarateTestIT {
@Test
public void testParallel() {
Results results = Runner.path("classpath:karate").tags().parallel(5);
assertTrue(results.getErrorMessages(), results.getFailCount() == 0);
}
}
如果空手道测试失败,使用并行方法 Maven 构建将失败。但是我无法通过 maven 命令选项将标签传递给测试。
我正在 运行 使用命令进行测试
mvn test -Dkarate.options="--tags @tag"
mvn test -Dkarate.options="--tags ~@tag"
我是不是漏掉了什么?有没有办法在空手道测试失败的情况下同时实现动态标记和 Maven 构建失败?
您很可能 运行 遇到了这个错误:Karate 0.9.5 : Can't get command line options in parallel execution
你能试试 0.9.6.RC3 并确认吗?
我想使用 Maven 执行空手道测试并将标签动态传递给执行。我正在使用 junit4,我尝试了两种方法 - 并行和简单的 @RunWith 注释。
@RunWith
package karate;
import com.intuit.karate.KarateOptions;
import com.intuit.karate.junit4.Karate;
import org.junit.runner.RunWith;
@RunWith(Karate.class)
@KarateOptions(features = "classpath:karate")
public class KarateTestIT {
}
使用这种方法,我可以动态地将标签传递给执行,但如果空手道测试失败,maven 构建仍然成功。
平行
package karate;
import com.intuit.karate.Results;
import com.intuit.karate.Runner;
import org.testng.annotations.Test;
import static org.junit.Assert.assertTrue;
public class KarateTestIT {
@Test
public void testParallel() {
Results results = Runner.path("classpath:karate").tags().parallel(5);
assertTrue(results.getErrorMessages(), results.getFailCount() == 0);
}
}
如果空手道测试失败,使用并行方法 Maven 构建将失败。但是我无法通过 maven 命令选项将标签传递给测试。
我正在 运行 使用命令进行测试
mvn test -Dkarate.options="--tags @tag"
mvn test -Dkarate.options="--tags ~@tag"
我是不是漏掉了什么?有没有办法在空手道测试失败的情况下同时实现动态标记和 Maven 构建失败?
您很可能 运行 遇到了这个错误:Karate 0.9.5 : Can't get command line options in parallel execution
你能试试 0.9.6.RC3 并确认吗?