JerseyTest 默认端口更改以测试 REST WEB SERVICE

Des*_*ble 3 java rest web-services jersey-test-framework jakarta-ee

我做了一个测试用例来测试我的 Rest Web 服务。但在测试用例中,我看到请求将发送到 jersey 测试框架的默认端口, http://localhost:9998而我的服务在http://localhost:8080. 我找不到如何将其端口更改为8080

public class UMServiceTest extends JerseyTest {


    @Override
    public Application configure() {
        enable(TestProperties.LOG_TRAFFIC);
        enable(TestProperties.DUMP_ENTITY);
        return new ResourceConfig(UMService.class);
    }    


    @Test
    public void testFetchAll() {
        System.out.println(getBaseUri()+"==========");
        Response output = target("usermanagement").path("um").path("user").request().get();
        assertEquals("should return status 200", 200, output.getStatus());
        //assertNotNull("Should return list", output.getEntity());
    }
Run Code Online (Sandbox Code Playgroud)

kuh*_*yan 5

您可以在运行测试时提供命令行参数,例如,

马文 mvn yourpack.UMServiceTest -Djersey.config.test.container.port=8080

或者在 Eclipse 中,您可以在运行配置的“参数”选项卡中传递它


小智 5

您也可以为 JerseyTest 从 TestProperties 更改 Systemproperty。

public class UMServiceTest extends JerseyTest
{
    static
    {
        System.setProperty("jersey.config.test.container.port", "0");
    }
...
Run Code Online (Sandbox Code Playgroud)