У меня есть проект Maven Project с использованием Jersey Test. - PullRequest
0 голосов
/ 13 апреля 2020

Это мой контроллер, где я выставляю API с помощью jersey frameWork mY test Case с использованием Jersey Test for Rest API of Jersey. Но я получаю одну и ту же ошибку для каждого API JDK 11. plz Ответ

   @Path("/contribute")
    public class CdueServiceController {

        @Inject
        private FileUploadService fileUploadService;

        @GET
        @Produces(MediaType.TEXT_PLAIN)
        public String getCdueService() {
            return "Auth-protected: Here you POST meta-data.";
        }
    }

Вот тестовый пример:

    import org.glassfish.jersey.logging.LoggingFeature;
    import org.glassfish.jersey.media.multipart.MultiPartFeature;
    import org.glassfish.jersey.server.ResourceConfig;
    import org.glassfish.jersey.test.DeploymentContext;
    import org.glassfish.jersey.test.JerseyTest;
    import org.glassfish.jersey.test.ServletDeploymentContext;
    import org.glassfish.jersey.test.TestProperties;
    import org.glassfish.jersey.test.grizzly.GrizzlyWebTestContainerFactory;
    import org.glassfish.jersey.test.spi.TestContainerException;
    import org.glassfish.jersey.test.spi.TestContainerFactory;
    import org.junit.Assert;
    import org.junit.Before;
    import org.junit.Test;
    import org.wwarn.util.FileCryptoUtil;

    import javax.ws.rs.core.Application;
    import javax.ws.rs.core.MediaType;
    import javax.ws.rs.core.Response;
    import javax.ws.rs.ext.ExceptionMapper;

    public class CdueServiceControllerTest  extends JerseyTest{

        public static final String RESOURCE_NAME = "demo.txt";
        public static final String SECOND_RESOURCE_NAME = "massiveFile100mb.csv";
        private FileCryptoUtil fileCryptoUtil;
      //  private Client client = ClientBuilder.newClient(new ClientConfig().register(LoggingFeature.class));

        @Override
        protected DeploymentContext configureDeployment() {
            return ServletDeploymentContext.forPackages(
                    getClass().getPackage().getName()).build();
        }

        @Override
        protected TestContainerFactory getTestContainerFactory() throws TestContainerException {
            return new GrizzlyWebTestContainerFactory();
        }

        @Override
        protected Application configure() {
            enable(TestProperties.LOG_TRAFFIC);
            enable(TestProperties.DUMP_ENTITY);
            return new ResourceConfig()
                    .registerClasses(CdueServiceController.class)
                    .register(MultiPartFeature.class)
                    .register(LoggingFeature.class)
                    .register(new ExceptionMapper<Throwable>() {
                        public Response toResponse(Throwable t) {
                            t.printStackTrace();
                            return Response.serverError().entity(t.getMessage()).build();
                        }
                    });
        }


        @Test
        public void getCdueServiceTest() {
           Response response = target().path("/contribute").request(MediaType.TEXT_PLAIN).get();
           Assert.assertEquals(Response.Status.OK.getStatusCode(),response.getStatus());
        }
    }

Я получаю одну и ту же ошибку каждый раз даже я не написал тест-кейс для другого метода:

    Apr 14, 2020 3:51:19 PM org.glassfish.jersey.test.grizzly.GrizzlyWebTestContainerFactory$GrizzlyWebTestContainer <init>
INFO: Creating GrizzlyWebTestContainer configured at the base URI http://localhost:9998/
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.servlet.WebappContext deploy
INFO: Starting application [TestContext] ...
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.servlet.WebappContext initServlets
INFO: [TestContext] Servlet [org.glassfish.jersey.servlet.ServletContainer] registered for url pattern(s) [[/*]].
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.servlet.WebappContext deploy
INFO: Application [TestContext] is ready to service requests.  Root: [].
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.http.server.NetworkListener start
INFO: Started listener bound to [localhost:9998]
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.http.server.HttpServer start
INFO: [HttpServer-1] Started.
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.http.server.NetworkListener shutdownNow
INFO: Stopped listener bound to [localhost:9998]
Apr 14, 2020 3:51:19 PM org.glassfish.jersey.test.grizzly.GrizzlyWebTestContainerFactory$GrizzlyWebTestContainer <init>
INFO: Creating GrizzlyWebTestContainer configured at the base URI http://localhost:9998/
Apr 14, 2020 3:51:19 PM org.glassfish.grizzly.servlet.WebappContext deploy
INFO: Starting application [TestContext] ...

java.lang.AssertionError: 
Expected :200
Actual   :500
 <Click to see difference>


    at org.junit.Assert.fail(Assert.java:88)
    at org.junit.Assert.failNotEquals(Assert.java:834)
    at org.junit.Assert.assertEquals(Assert.java:645)
    at org.junit.Assert.assertEquals(Assert.java:631)
    at org.iddo.cdue.CdueServiceControllerTest.getCdueServiceTest(CdueServiceControllerTest.java:63)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
    at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)
    at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at com.intellij.rt.execution.application.AppMainV2.main(AppMainV2.java:131)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...