Java 使用外部库Spring框架使用mock执行空手道jar

Java 使用外部库Spring框架使用mock执行空手道jar,java,spring,karate,intuit,Java,Spring,Karate,Intuit,早上好。我正在做一个使用空手道的项目。我对空手道完全陌生,可以原谅我在这里缺乏知识 使用“-m”命令行参数执行独立的空手道jar,以启动mock.feature。feature引用了一个构建在“org.springframework.amqp”上的utils类 问题在于,由于外部库“org/springframework/amqp/rabbit/connection/ConnectionFactory”,karate.jar启动失败,命令行执行异常 api1\u模拟测试。功能 Feature:

早上好。我正在做一个使用空手道的项目。我对空手道完全陌生,可以原谅我在这里缺乏知识

使用“-m”命令行参数执行独立的空手道jar,以启动mock.feature。feature引用了一个构建在“org.springframework.amqp”上的utils类

问题在于,由于外部库“org/springframework/amqp/rabbit/connection/ConnectionFactory”,karate.jar启动失败,命令行执行异常

api1\u模拟测试。功能

Feature: API1 Mock Test

Background:
* def RabbitUtils = Java.type('utils.RabbitUtils')
.
.
我们的RabbitUtils只是一个java类,它导入org.springframework.amqp外部库,以提供与RabbitAMQP代理交互的功能,例如连接、接收、发布、清除等。在IntelliJ中构建和运行时,所有工作正常。项目中的POM参考为:

<dependency>
   <groupId>org.springframework.amqp</groupId>
   <artifactId>spring-rabbit</artifactId>
   <version>2.1.5.RELEASE</version>
</dependency>

谢谢大家!

谢谢你问我这个问题,我想我已经找到了一种方法来解决这个问题,这会带来很多巨大的可能性。解决方案是使用Java第一原则,而不是使用
-jar
选项。空手道命令行应用程序(或CLI)类恰好是
com.intuit.Karate.Main
。我将在这里提供一个使用的演示。首先,功能文件
test.feature

Feature: sikuli test

Background:
* def Screen = Java.type('org.sikuli.script.Screen')

Scenario:
* def s = new Screen()
* def c = s.capture()
* c.getFile('.')
在命令行的同一文件夹中使用
karate.jar
sikulixapi.jar
,这是可行的(对于windows,使用
而不是
作为“路径分隔符”):


对于那些希望自定义Visual Studio代码“空手道跑步者”扩展的类路径的人,请参考以下内容:

Hi Peter。非常感谢您的快速响应和出色的工具。非常感谢。您可以看到如何支持功能服务器模拟(使用'-m'&'-p'是否相同?)。我们的用例是测试与API和MQ通信的独立Win服务,因此我们使用独立服务器来托管模拟API和MQ通信的模拟。在test.features和mock.features中引用的用Java编写的UTIL类。所有ext依赖项都保存在本地.m2缓存中,因此需要一种复制它们的方法,我想IntelliJ可以处理这个问题。这最终会是git hub下的一个演示吗?干杯。@mactwixs谢谢:)
-p
对于端口是必需的。我认为有一些方法可以从maven中复制JAR,例如:-还有人告诉我这个技巧:
mvn依赖项:build classpath-Dmdep.includeScope=test-Dmdep.outputFile=classpath.txt
将类路径转储到文件中。这是非常具体的,所以不确定这是否可以是一个演示,但我鼓励你博客关于你的经验等
Feature: sikuli test

Background:
* def Screen = Java.type('org.sikuli.script.Screen')

Scenario:
* def s = new Screen()
* def c = s.capture()
* c.getFile('.')
java -cp karate.jar:sikulixapi.jar com.intuit.karate.Main test.feature