我想使用空手道将每个.feature文件作为单个TestNG测试运行?

时间:2018-01-03 11:35:27

标签: karate

我想使用空手道将每个.feature文件作为单个TestNG测试运行,我该怎么做?

我们正在使用空手道来自动化REST API。我们有自定义监听器,它将每个TestNG测试的状态和其他信息记录到postgress DB。

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用空手道TestNG支持?该文档包含有关如何使用的详细信息:https://github.com/intuit/karate#running-with-testng

作为空手道的开发者,我实际上强烈建议团队不要使用TestNG。我的建议是你使用新的'hooks'功能直接从Karate调用你的自定义Java代码,你不会依赖于TestNG甚至是JUnit。

如果您仍需要自定义运行方式,则TestNG支持实际上是一个单独的类:KarateRunner.java。我真的不知道它是否作为TestNG测试运行每个功能,因为我不是TestNG专家。但是你应该能够创建自己的Java代码版本,它可以做你想做的事情,并可能将它贡献给项目。

答案 1 :(得分:0)

按标签运行的另一种方式:

@CucumberOptions(tags = { "@getVersion" })
public class GetVersionTest extends KarateRunner {

}

功能文件:

@getVersion
Feature: Testing Rest API with Karate and Java

  Scenario: 
    Given url 'https://......'
    When method get
    Then status 200
    And match response contains '{version= x.xx.x}'