我继承了Java / Maven / Cucumber项目。我对Cucumber很新。
在其中一个文件夹中,我有一个这样的类......
import com.intuit.karate.junit4.Karate;
import org.junit.runner.RunWith;
@RunWith(Karate.class)
public class RoadsRunner {
}
然后在同一个子目录/包中我有一个.feature文件。 有很多场景。
Feature: Check transaction
Background:
* url apiHost + '/api/v1'
* configure headers = {'X-TransactionID': '#(Math.random().toString())' }
Scenario: Get Classes
# get classes
Given path '/myUrl/classes'
And param processName = 'myProcess'
When method get
Then status 200
问题一。
我正在使用Eclipse。有没有一种方法可以通过类似于调试Java应用程序的方式调试测试?
我已经下载了自己的Cucumber Eclipse插件,但无法弄清楚如何使用它。
问题二。
不使用自定义插件进行调试是否可以添加到场景中以打印额外的调试信息。
感谢
答案 0 :(得分:2)
Cucumber Eclipse plugin为您提供了两件事:
空手道是幕后的Java,所以你可以调试和设置断点,但它可能不像你期望的那样无缝。在0.6.0中,您可以选择在每个测试步骤之前/之后运行的空手道代码中放置一个条件断点 - see screen-shot。
因此,正确地说,打印到日志可能是处理复杂测试脚本的最有效方法。请参阅print
关键字 - 这正是您所寻找的。 p>
另外2点:
答案 1 :(得分:2)
根据此处的documentation,目前,调试Karate Steps的最佳方法是使用Visual Studio Code开发测试,并使用 VS Code Karate Plugin 进行调试。
Visual Studio Code是免费的,基于开放源代码构建,并且可以在包括mac / linux和Windows在内的所有平台上运行。
空手道UI已淘汰,并且从0.9.5开始不可用! 请改用VS代码调试支持。
根据彼得·托马斯(Peter Thomas)的评论,Eclipse / IntelliJ也可能支持调试,但我在那里找不到任何开发。