arquillian-test安全rest资源

46scxncf  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(259)

我有一个简单的具有安全角色的rest资源:

@Path("customer")
@Produces(MediaType.APPLICATION_JSON)
public interface CustomerResource {

    @GET
    @Path("/find")
    public Response find(@QueryParam("idProfesionalDispositivo") String id) ;
}

设计和实施:

@Stateless
@PermitAll
public class CustomerResourceImpl implements CustomerResource{

    @Override
    @RolesAllowed("ROLE_FIND")
    public Response find(String id) {
        return Response.ok("OK").build();
    }
}

这工作还可以。
测试用例工作正常,但由于是安全的,所以失败了。

@RunWith(Arquillian.class)
public class CustomerResourceTest extends AbstractTest{

    @Deployment (testable = false)
    public static WebArchive createTestRestArchive(){
            return ShrinkWrap
                    .create(WebArchive.class, "backend-web.war")
                      .addPackages(true, "ar.com.morepackages")
                      .addPackages(true, "org.apache.commons.lang3")
                      .addAsResource("test-persistence.xml", "META-INF/persistence.xml")
                      .addAsWebInfResource(EmptyAsset.INSTANCE, "beans.xml");
    }

    @ArquillianResource
    private URL deploymentURL;

    @Test
    public void find(@ArquillianResteasyResource CustomerResource resource) throws Exception {
        final Response response = resource.find("1");
        assertTrue(response.getStatus()==Status.OK.getStatusCode());
    }
}

我需要一个使用arquillian(createcontext?)创建具有安全问题的适当测试的示例。该应用程序运行在JBoss7.1中,并使用自定义的安全域,在部署应用程序时可以正常工作。我在网上搜索例子,但不在任何地方工作
提前谢谢。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题