一、搭建mock server

mock工具很多,这里我们选择用简单易操作的moco服务器

二、使用mock server

从最简单的hello world开始,使用json做为交互数据使用,编辑config.json为如下文件:

[

{

"request" :

{

"uri" : "/hello"

},

"response" :

{

"text" : "World!"

}

}

]

启动mock server

java -jar moco-runner-0.10.0-standalone.jar http -p 12888 -c config.json

三:验证

使用httpRequest相关发送get /hello,就会返回world

四:丰富接口后使用unittest、requests写的接口用例如下,包括了get、post、put和deletet接口,代码如下,有需要的可以参考:

importunittest

importrequests

importjson

classTestInterFace(unittest.TestCase):

defsetUp(self):

#print "xxxx"

self.domain='http://localhost:12888'self.json_headers={"content-type":'application/json'}

print "before each test"

deftearDown(self):

print "End One Testcase"

deftest_get_all_posts(self):

print "test get all posts"result=requests.get(self.url_test("/posts")).json()

self.assertEqual(len(result),3)

printlen(result)

self.assertEqual(result[0]['title'],'first post')

#print 'xxx'

self.assertEqual(result[0]['url'],'/posts/1')

self.assertEqual(result[-1]['title'],'how to learn interface test')

self.assertEqual(result[-1]['url'],'/posts/3')

deftest_get_first_post(self):

print "test get first post"result=requests.get(self.url_test("/posts/1")).json()

self.assertEqual(len(result),2)

self.assertEqual(result['title'],'first post')

self.assertEqual(result['content'],'this is my first post')

defurl_test(self,path):

return self.domain +path

deftest_create_post(self):

#headers={"content-type":'application/json'}

json_data=json.dumps({"title": "new post","content": "new post"})

result=requests.post(self.url_test('/posts'),data=json_data,headers=self.json_headers)

printresult.status_code

printresult.text

self.assertEqual(result.status_code,200)

self.assertEqual(result['sucess'],'true')

deftest_modify_post(self):

headers={"content-type":'application/json'}

json_data=json.dumps({"title": "new post","content": "new post"})

result=requests.put(self.url_test('/posts/1'),data=json_data,headers=self.json_headers)

printresult.status_code

printresult.text

self.assertEqual(result.status_code,200)

#self.assertTrue

deftest_delete_post(self):

headers={"content-type":'application/json'}

json_data=json.dumps({"title": "new post","content": "new post"})

result=requests.delete(self.url_test('/posts/2'))

printresult.status_code

printresult.text

self.assertEqual(result.status_code,200)

#self.assertTrue

if __name__=='__main__':

unittest.main()

mock server java_mock server搭建及接口测试简单实例相关推荐

  1. Hibernate搭建开发环境+简单实例(二)

    2019独角兽企业重金招聘Python工程师标准>>> Hibernate是非常典型的持久层框架,持久化的思想是非常值得我们学习和研究的.这篇博文,我们主要以实例的形式学习Hiber ...

  2. VisualSVN Server版本库搭建

    VisualSVN Server版本库搭建 VisualsvnServer用途: 软件开发公司的代码是公司的核心,是公司最需要保护的文件资源,为了防止公司代码的泄露,放到公网的免费版本控制服务器商虽然 ...

  3. 2012系统如何搭建pptp服务器,ubuntu server 12.04 搭建 pptp 服务器

    ubuntu server 12.04 搭建 pptp 服务器 blog 归档 运维 Linux pptp 前几天把pptp服务器搭上了, xen的vps就这点好处, 想怎么搞就怎么搞, 虽说贵了点. ...

  4. Dart Server开发环境搭建及新建运行项目

    Dart Server开发环境搭建及新建运行项目 开发环境的搭建 1. 下载Dart SDK 2. 下载开发工具 3. 创建Dart Server项目 Dart除了可以使用Flutter进行移动应用开 ...

  5. 利用FIleZilla Server在局域网搭建在线点播电脑本地文件电影FTP

    写在前面 设备: 笔记本电脑 Iphone8(IOS11) 主路由器 TP-Link W842N 从路由器 斐讯K2 软件: FileZilla Server(Windows) Ftp Manager ...

  6. SQL Server中读取XML文件的简单做法

    SQL Server 2000使得以XML导出数据变得更加简单,但在SQL Server 2000中导入XML数据并对其进行处理则有些麻烦.本文介绍在SQL Server中读取XML文件的简单做法. ...

  7. Windows Server 2008 R2 搭建DNS服务器(转)

    Windows Server 2008 R2 搭建DNS服务器 将本机IP设为首选DNS服务器的地址 在dos 下分别输入 nslookup www.mydns.com 和 nslookup 192. ...

  8. Sql Server之旅——第十一站 简单说说sqlserver的执行计划

    原文:Sql Server之旅--第十一站 简单说说sqlserver的执行计划 我们知道sql在底层的执行给我们上层人员开了一个窗口,那就是执行计划,有了执行计划之后,我们就清楚了那些烂sql是怎么 ...

  9. Lync Server的环境搭建(五):Lync-Server的安装部署

    今天,我们接着来进行Lync-Server服务端的安装. 我们分别打开"Lync-DC"和"Lync-Server"这两台虚拟机,切换到"Lync-S ...

  10. windows server 2019 服务器搭建的方法步骤(图文)

    一.windows server 2019 安装 Vmware 下安装 windows server 2019 . 二.服务器配置 1. 先启用远程功能 右键点击[此电脑]–[属性],进入" ...

最新文章

  1. 如何确认mongodb数据插入是否成功_go连接mongodb
  2. activeMQ 安装部署文档
  3. python类中的函数_python类中的函数问题
  4. linux脚本日期时间,Linux 日期和时间操作详解
  5. 【转】MySQL中select * for update锁表的问题
  6. 【CodeForces - 1042A】Benches (优先队列,思维模拟,maxmin问题)
  7. list vue 删除后页面渲染_Vue项目中v-for数组删除第n项元素产生渲染错误问题及解决方法...
  8. 容器编排技术 -- Kubernetes kubectl create secret tls 命令详解
  9. 中国移动计算机类行测题目,中国移动笔试题:行测巧用十字交叉法解题
  10. 展锐Android-Q LCD调试
  11. Cylons工业机器人_机器人的是什么意思
  12. HDU1859 最小长方形 (水
  13. 哲理小故事--跳蚤人生
  14. 数据结构——顺序表的实现
  15. 以太坊交易信息及event、input、logs、topics等概念机制
  16. 华为笔记本电脑计算机在哪里打开,华为笔记本电脑有摄像头吗
  17. linux 查看文件创建时间
  18. 远程桌面连接出现身份验证错误。要求的函数不受支持。这可能是由于CredSSP加密数据库修正。
  19. 【Workflow】5类经典科学工作流任务数统计
  20. 分形之列维(levy)曲线

热门文章

  1. java微信支付,企业微信号转账给个人
  2. 本草纲目pdf彩图版下载_本草纲目彩色图谱下载|本草纲目彩色图集(精编珍藏版) PDF电子版 - 天天游戏吧...
  3. oppo android版本升级失败,oppo怎么刷机以及刷机失败的原因
  4. Mac 版pr 破解教程,亲测可行。
  5. Mysql官网下载教程
  6. Windows7系统无损分区的教程
  7. vscode快速下载方法
  8. TCP-IP协议详解(2) 以太网与WiFi协议
  9. 如果您已经熟悉K8s,现在不妨试试K9s
  10. 斯皮尔曼相关系数范围_什么是斯皮尔曼相关系数