我是单元测试的新手,我想测试项目中的某些球衣服务。我们正在使用Junit。请指导我以更好的方式编写测试用例。
码:
@GET
@Path("/getProducts/{companyID}/{companyName}/{date}")
@Produces(MediaType.APPLICATION_JSON)
public Object getProducts(@PathParam("companyID") final int companyID,
@PathParam("date") final String date, @PathParam("companyName") final String companyName)
throws IOException {
return productService.getProducts(companyID, companyName, date);
}
上面提到的服务工作正常,我想编写junit测试用例来测试上面提到的方法。上面的方法将以List<Product>
JSON格式检索产品列表()。我想编写测试用例以检查响应状态和json格式。
注意: 我们使用的是Jersey 1.17.1版本。
帮助将不胜感激:)
对于Jersey Web服务测试,有几个测试框架,分别是:Jersey Test Framework(已经在其他答案中提及-
请在此处查看版本1.17的文档:https : //jersey.java.net/documentation/1.17/test-
framework.html
)和REST-Assured(https://code.google.com/p/rest-
assured
)-在此处查看两者的比较/设置(http://www.hascode.com/2011/09/rest-assured- vs-
jersey-test-framework-testing-you-restful-web-services
/)。
我发现REST-Assured更加有趣且功能强大,但是Jersey Test Framework也非常易于使用。在REST-
Assured中编写一个测试用例以“检查响应状态和json格式”,您可以编写以下测试(与在jUnit中所做的非常相似):
package com.example.rest;
import static com.jayway.restassured.RestAssured.expect;
import groovyx.net.http.ContentType;
import org.junit.Before;
import org.junit.Test;
import com.jayway.restassured.RestAssured;
public class Products{
@Before
public void setUp(){
RestAssured.basePath = "http://localhost:8080";
}
@Test
public void testGetProducts(){
expect().statusCode(200).contentType(ContentType.JSON).when()
.get("/getProducts/companyid/companyname/12345088723");
}
}
这应该为您解决问题…您还可以非常轻松地验证JSON特定元素以及许多其他详细信息。有关更多功能的说明,您可以从REST-
Assured(https://code.google.com/p/rest-
assured/wiki/Usage)中查看非常好的指南。另一个很好的教程是http://www.hascode.com/2011/10/testing-
restful-web-services-made-easy-using-the-rest-assured-
framework/。
HTH。
我需要在java上开发简单的web服务。我是java技术新手,根据几篇文章,我决定将JAX-RS(Jersey)与嵌入式http服务器(Grizzly2)结合使用,因为它看起来适合构建REST服务,部署似乎很简单。 在我的开发环境中,所有工作都很完美(使用IntllijIdea)。 但当我尝试在测试服务器上部署时,每个请求都返回“500内部错误”(偶数/application.wadl) 简单资源
如spring boot博客所述 我尝试自定义我的对象序列化。 在我的配置中添加了一个新的配置bean之后 当我尝试输出类用户的实例时,json结果不在CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES中 也许我需要在我的Jersey配置中注册一些东西来激活我的自定义obejctMapper配置 谢谢
Android Studio 1.1 添加了单元测试支持,详细请看 Unit testing support。本章的其余部分描述的是 “instrumentation tests”。利用 Instrumentation 测试框架可以构建独立的测试 APK 并运行在真实设备(或模拟器)中进行测试。
英文原文:http://emberjs.com/guides/testing/unit/ 单元测试用于测试代码的一个小片段,确保其功能正常。与集成测试不同,单元测试被限定在一个范围内,并且不需要Ember应用运行。 全局 vs 模块 过去如果没有作为一个全局变量加载整个Ember应用,要对应用进行测试非常困难。通过使用模块(CommonJS,AMD等)来编写应用,可以只加载被测试的部分,而不用将其
我有一个DropWizard项目,带有一个简单的表单提交endpoint: 我正在使用Swagger(swagger-jersey2-jaxrs 1.5.4)来记录我的API。但是,对于此endpoint,没有为表单参数生成文档。如果我更改
单元测试涉及测试软件应用程序的每个单元或单个组件。这是第一级软件测试。单元测试的目的是验证单元组件的性能。 单元是软件系统的单个可测试部分,并在应用程序软件的开发阶段进行测试。 此测试旨在测试隔离代码的正确性。单元组件是应用程序的单独功能或代码。白盒测试方法用于单元测试,通常由开发人员完成。 在测试级别层次结构中,单元测试是在集成和其他剩余测试级别之前完成的第一级测试。它使用模块进行测试,减少了等