@RestController("/words")
public class WordsController {
@RequestMapping(method = RequestMethod.GET)
@ResponseBody
public ResponseEntity getAllWords() {
return ResponseEntity
.status(HttpStatus.OK)
.contentType(MediaType.APPLICATION_JSON)
.body("Your list of words go here");
}
}
@ContextConfiguration(classes = MyApplication.class)
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.DEFINED_PORT)
@ActiveProfiles("test")
class WordsControllerTest extends Specification {
RESTClient restClient = new RESTClient("http://localhost:3000", ContentType.JSON)
def "test the GET endpoint is available"() {
when:
def response = restClient.get(
path: '/words',
requestContentType: JSON
)
then:
response.status == 200
}
下面是我的应用程序主类:
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}
但当我运行这个程序时,我得到了一个非常奇怪的错误:
groovyx.net.http.restclient:解析'application/json'响应时出错
compile('org.springframework.boot:spring-boot-starter-data-jpa')
compile('org.springframework.boot:spring-boot-devtools')
compile("org.springframework.boot:spring-boot-starter-web:${springBootVersion}")
runtime('com.h2database:h2')
compile group: 'org.codehaus.groovy.modules.http-builder', name: 'http-builder', version: '0.7.1'
testCompile('org.springframework.boot:spring-boot-starter-test')
testCompile('org.spockframework:spock-core:1.1-groovy-2.4-rc-2')
testCompile('org.spockframework:spock-spring:1.1-groovy-2.4-rc-2')
testCompile "org.hamcrest:hamcrest-core:1.2"
将您的endpoint标记为返回application/json
媒体类型是不够的。您还需要返回有效的JSON内容,该内容:
"Your list of words go here"
不是。
如果需要返回列表,请写:
return ResponseEntity
.status(HttpStatus.OK)
.contentType(MediaType.APPLICATION_JSON)
.body("{\"words\": [\"one\", \"two\"]}");
return ResponseEntity
.status(HttpStatus.OK)
.contentType(MediaType.APPLICATION_JSON)
.body("{\"msg\": \"content\"");
在我的应用程序中有,它有一个操作,如下所示: 现在,我正在测试视图和模型,如下所示: 但是我的测试用例失败了,stacktrace如下: 正在运行2个spock测试。。。第1页,共2页 有什么问题吗。
问题内容: 我使用spock编写测试用例,使用jenkins运行和发布我的测试用例。我能够得到报告的代码覆盖率,但是声纳 仅 向我显示 Java 单元测试用例;在 常规测试案例是完全缺失 以下pom.xml用作参考 https://github.com/kkapelon/java-testing-with- spock/blob/master/chapter7/spring-standalone-
null
完成了818个集成测试,0在104001ms运行1个spock测试时失败...失败:CreditServiceSpec groovy.lang.groovyRuntimeException:未能调用构造函数:public org.codehaus.groovy.grails.test.support.grailstestautoWirer(org.springframework.context.a
使用Spock运行集成测试(例如)的最佳方式是什么?我想引导整个Spring Boot应用程序,并执行一些HTTP调用来测试整个功能。 我可以用JUnit(首先运行应用程序,然后执行测试): 但是有了Spock,应用程序就不会启动了: