如何使用REST Assured来提取Spring Boot API测试的值

发表于:2017-10-30 09:13

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Linda Liu    来源:51Testing软件测试网原创

  目前,对API测试来讲,最重要的是能提取出API测试的数值,并在后续的WEB请求中使用这些值。在本文中我将展示如何利用Java,Gradle,Intellij以及REST Assured来提取API测试的数值并使这些值能真正生效。
  Intellij是一个集成开发环境,REST Assured是一个开源的框架,主要用来测试Java版的REST web服务,而Gradle是一个构建工具。大家可以选择不同的工具来做API测试,这取决于你的喜好,当然也取决于你要测试的项目。
  作为演示,我们创建一个Spring Boot和Hibernate之间的Java API测试。此API有4个控制器分别为到达、出发、用户和航班。它们之间有两个或多个路径来调用不同类型的请求。路径上的请求大部分都是GET请求,但在某些路径上也有POST和DELETE请求。大家可以自己尝试运行测试。
  这里展示的测试仅包括一些简单的路径测试,例如JSON响应的语法验证,请求时间,允许的方法等,但单元测试不包括在内。
  第一步:创建一个API测试项目
  1、安装Intellij IDEA;
  2、确认已经安装了Java JDK(至少1.8.x的版本), 现在我们就开始创建一个新的工程;
  3、打开IntelliJ并点击"Create New Project";
   
  4、选择Gradle,勾选Java并选择JDK版本;
   
  5、给你的工程命名;
   ... ...
   查看全文内容,请点击下载:http://www.51testing.com/html/68/n-3721768.html
  第二步:添加依赖
  现在我们已经创建了一个工程,接下来需要建立依赖。由于这些依赖都是公有的,我们所有人都可以使用。怎样使用依赖呢?双击你的build.gradle文件,并添加下面的gradle配置文件:
group'blaze'
version'1.0-SNAPSHOT'
buildscript{
repositories{
jcenter()
mavenCentral()
maven{url"http://repo.spring.io/libs-snapshot"}
}
dependencies{
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.2.RELEASE")
}
}
applyplugin:'java'
applyplugin:'idea'
applyplugin:'io.spring.dependency-management'
applyplugin:'org.springframework.boot'
sourceSets{
main.java.srcDir"src/main/java"
main.resources.srcDir"src/main/resources"
test.java.srcDir"src/test/java"
test.resources.srcDir"src/test/resources"
}
jar{
baseName='blaze-demo-api'
version='1.0'
}
bootRepackage{
mainClass='com.demo.BlazeMetterApi'
}
dependencyManagement{
imports{
mavenBom'io.spring.platform:platform-bom:Brussels-SR2'
}
}
repositories{
mavenCentral()
jcenter()
maven{url"http://repo.spring.io/libs-snapshot"}
}
sourceCompatibility=1.8
targetCompatibility=1.8
dependencies{
compilegroup:'org.springframework',name:'spring-core'
compilegroup:'org.springframework.boot',name:'spring-boot-starter-jdbc'
compilegroup:'org.springframework.boot',name:'spring-boot-starter-web'
compilegroup:'org.springframework.boot',name:'spring-boot-starter-actuator'
compilegroup:'org.springframework.boot',name:'spring-boot-starter-security'
compilegroup:'org.springframework.boot',name:'spring-boot-starter-data-jpa'
compilegroup:'org.springframework.security.oauth',name:'spring-security-oauth2'
compilegroup:'com.fasterxml.jackson.datatype',name:'jackson-datatype-hibernate4'
compilegroup:'mysql',name:'mysql-connector-java'
compilegroup:'io.rest-assured',name:'rest-assured',version:'3.0.3'
compilegroup:'io.rest-assured',name:'json-schema-validator',version:'3.0.3'
testCompilegroup:'org.springframework.boot',name:'spring-boot-starter-test'
testCompilegroup:'junit',name:'junit'
}
   ... ...
   查看更多精彩内容,请点击下载:http://www.51testing.com/html/68/n-3721768.html
版权声明:本文出自《51测试天地》第四十七期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号