I want to Test my Endpoints using Karate, but when starting the Test I get following Error:
java.lang.IllegalArgumentException: Could not find option with name engine.WarnInterpreterOnly.
Java version: 11
Karate Maven Dependency:
<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-junit5</artifactId>
<version>1.2.0.RC4</version>
</dependency>
Feature File:
Feature: To test the config-resource
Background:
* url baseUrl
Scenario: Add a new room
Given path 'addRoom/testRoom'
When method POST
Then status 201
Java Test class:
package at.htl.mqtt.client.boundary;
import com.intuit.karate.junit5.Karate;
import io.quarkus.test.junit.QuarkusTest;
@QuarkusTest
public class ConfigEndpointTest {
@Karate.Test
Karate testGetRoom() {
return Karate.run("config-resource.feature").relativeTo(getClass());
}
}
I have src/test/java as my testResource
Edit:
So I used the Runner API like you said but I still get the same Error.
import io.quarkus.test.junit.QuarkusTest;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
@QuarkusTest
public class ConfigEndpointTest {
@Test
void testRoom() {
Results results = Runner.path("config-resource.feature").relativeTo(getClass()).parallel(5);
assertEquals(0,results.getFailCount(), results.getErrorMessages());
}
}
Btw I changed Java version to 16.
Any other suggestions?