Submit Search
Upload
WireMock 起飞手册
•
1 like
•
429 views
Jiyee Sheng
Follow
WireMock 团队合作操作指南
Read less
Read more
Software
Report
Share
Report
Share
1 of 23
Download now
Download to read offline
Recommended
Mock Server的应用与实践
Mock Server的应用与实践
qi lei
用Maven管理專案的依賴關係
用Maven管理專案的依賴關係
Huang Bruce
Eventmachine Websocket 實戰
Eventmachine Websocket 實戰
Mu-Fan Teng
How to upgrade_ror3_to_ror4
How to upgrade_ror3_to_ror4
Wei-Yi Chiu
PHP 應用之一 socket funion : 偽 WEB Server
PHP 應用之一 socket funion : 偽 WEB Server
志賢 黃
Real time web实时信息流推送
Real time web实时信息流推送
yongboy
How to choose web framework
How to choose web framework
Bo-Yi Wu
How to ASP.NET MVC4
How to ASP.NET MVC4
Daniel Chou
Recommended
Mock Server的应用与实践
Mock Server的应用与实践
qi lei
用Maven管理專案的依賴關係
用Maven管理專案的依賴關係
Huang Bruce
Eventmachine Websocket 實戰
Eventmachine Websocket 實戰
Mu-Fan Teng
How to upgrade_ror3_to_ror4
How to upgrade_ror3_to_ror4
Wei-Yi Chiu
PHP 應用之一 socket funion : 偽 WEB Server
PHP 應用之一 socket funion : 偽 WEB Server
志賢 黃
Real time web实时信息流推送
Real time web实时信息流推送
yongboy
How to choose web framework
How to choose web framework
Bo-Yi Wu
How to ASP.NET MVC4
How to ASP.NET MVC4
Daniel Chou
驗證與訊息
驗證與訊息
Shengyou Fan
实时Web的前世今生未来
实时Web的前世今生未来
RolfZhang
Build your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by step
Bryan Yang
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
Jeff Chu
Leverage virtualization in software test
Leverage virtualization in software test
drewz lin
twPolitwoops final
twPolitwoops final
橘毛 貓
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
俊仁 陳
Asp.net core v1.0
Asp.net core v1.0
chang kuo-chao
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
美团点评技术团队
工作坊簡介
工作坊簡介
Shengyou Fan
Vagrant教學
Vagrant教學
Onnie Fong
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
Jmeter
Jmeter
Guang Ying Yuan
Laravel - 系統全攻略(續)
Laravel - 系統全攻略(續)
Vincent Chi
02.wls概览
02.wls概览
Meng He
Nodejs & NAE
Nodejs & NAE
q3boy
網頁弱點掃描服務簡報 20120606
網頁弱點掃描服務簡報 20120606
Fionsu
合久必分,分久必合
合久必分,分久必合
Qiangning Hong
MySQL运维那些事
MySQL运维那些事
Jinrong Ye
微軟實戰課程日:玩轉雲端 技術與架構
微軟實戰課程日:玩轉雲端 技術與架構
Jeff Chu
从CI到CD[麻袋理财王天青]v1
从CI到CD[麻袋理财王天青]v1
天青 王
新浪微博平台与安全架构
新浪微博平台与安全架构
n716
More Related Content
What's hot
驗證與訊息
驗證與訊息
Shengyou Fan
实时Web的前世今生未来
实时Web的前世今生未来
RolfZhang
Build your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by step
Bryan Yang
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
Jeff Chu
Leverage virtualization in software test
Leverage virtualization in software test
drewz lin
twPolitwoops final
twPolitwoops final
橘毛 貓
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
俊仁 陳
Asp.net core v1.0
Asp.net core v1.0
chang kuo-chao
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
美团点评技术团队
工作坊簡介
工作坊簡介
Shengyou Fan
Vagrant教學
Vagrant教學
Onnie Fong
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
Jmeter
Jmeter
Guang Ying Yuan
Laravel - 系統全攻略(續)
Laravel - 系統全攻略(續)
Vincent Chi
What's hot
(14)
驗證與訊息
驗證與訊息
实时Web的前世今生未来
实时Web的前世今生未来
Build your ETL job using Jenkins - step by step
Build your ETL job using Jenkins - step by step
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
ASP.NET 開發人員不可不知的 IIS (IIS for ASP.NET Developers)
Leverage virtualization in software test
Leverage virtualization in software test
twPolitwoops final
twPolitwoops final
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
Asp.net core v1.0
Asp.net core v1.0
W3CTech美团react专场-React Native 初探
W3CTech美团react专场-React Native 初探
工作坊簡介
工作坊簡介
Vagrant教學
Vagrant教學
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Jmeter
Jmeter
Laravel - 系統全攻略(續)
Laravel - 系統全攻略(續)
Similar to WireMock 起飞手册
02.wls概览
02.wls概览
Meng He
Nodejs & NAE
Nodejs & NAE
q3boy
網頁弱點掃描服務簡報 20120606
網頁弱點掃描服務簡報 20120606
Fionsu
合久必分,分久必合
合久必分,分久必合
Qiangning Hong
MySQL运维那些事
MySQL运维那些事
Jinrong Ye
微軟實戰課程日:玩轉雲端 技術與架構
微軟實戰課程日:玩轉雲端 技術與架構
Jeff Chu
从CI到CD[麻袋理财王天青]v1
从CI到CD[麻袋理财王天青]v1
天青 王
新浪微博平台与安全架构
新浪微博平台与安全架构
n716
網路技術心得分享
網路技術心得分享
Mux Baxer
為什麼在網址列輸入netis路由器的IP位址192.168.1.1,卻無法顯示網頁
為什麼在網址列輸入netis路由器的IP位址192.168.1.1,卻無法顯示網頁
臺灣塔米歐
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
Scourgen Hong
http flood and mobile app
http flood and mobile app
im_yunshu
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
littlecong
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Justin Lin
大众点评网的技术变迁之路
大众点评网的技术变迁之路
jeffz
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
Shanda innovation institute
谈谈模块化
谈谈模块化
衡锋 阳
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
20110607 IPv6
20110607 IPv6
Jui-Nan Lin
Introduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 Features
Jeff Chu
Similar to WireMock 起飞手册
(20)
02.wls概览
02.wls概览
Nodejs & NAE
Nodejs & NAE
網頁弱點掃描服務簡報 20120606
網頁弱點掃描服務簡報 20120606
合久必分,分久必合
合久必分,分久必合
MySQL运维那些事
MySQL运维那些事
微軟實戰課程日:玩轉雲端 技術與架構
微軟實戰課程日:玩轉雲端 技術與架構
从CI到CD[麻袋理财王天青]v1
从CI到CD[麻袋理财王天青]v1
新浪微博平台与安全架构
新浪微博平台与安全架构
網路技術心得分享
網路技術心得分享
為什麼在網址列輸入netis路由器的IP位址192.168.1.1,卻無法顯示網頁
為什麼在網址列輸入netis路由器的IP位址192.168.1.1,卻無法顯示網頁
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
http flood and mobile app
http flood and mobile app
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
大众点评网的技术变迁之路
大众点评网的技术变迁之路
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
[.Net开发交流会][2010.06.19]大众点评网的技术变迁之路(王宏)
谈谈模块化
谈谈模块化
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
20110607 IPv6
20110607 IPv6
Introduction to ASP.NET MVC and MVC 5 Features
Introduction to ASP.NET MVC and MVC 5 Features
More from Jiyee Sheng
tree-sitter-objc-slides.pptx
tree-sitter-objc-slides.pptx
Jiyee Sheng
我的键盘习惯 - 盛宣玮.pdf
我的键盘习惯 - 盛宣玮.pdf
Jiyee Sheng
人人车二手车 iOS 客户端架构演进史
人人车二手车 iOS 客户端架构演进史
Jiyee Sheng
如何高效工作
如何高效工作
Jiyee Sheng
下一个读代码的人就是你
下一个读代码的人就是你
Jiyee Sheng
Mac - 推开程序员的另一扇窗
Mac - 推开程序员的另一扇窗
Jiyee Sheng
下一个读代码的人就是你
下一个读代码的人就是你
Jiyee Sheng
iOS团队开发实践经验
iOS团队开发实践经验
Jiyee Sheng
2013年京JS参会分享
2013年京JS参会分享
Jiyee Sheng
一个顽强的bug修复经历
一个顽强的bug修复经历
Jiyee Sheng
Using Shell & Mastering Shell
Using Shell & Mastering Shell
Jiyee Sheng
正则指引
正则指引
Jiyee Sheng
More from Jiyee Sheng
(12)
tree-sitter-objc-slides.pptx
tree-sitter-objc-slides.pptx
我的键盘习惯 - 盛宣玮.pdf
我的键盘习惯 - 盛宣玮.pdf
人人车二手车 iOS 客户端架构演进史
人人车二手车 iOS 客户端架构演进史
如何高效工作
如何高效工作
下一个读代码的人就是你
下一个读代码的人就是你
Mac - 推开程序员的另一扇窗
Mac - 推开程序员的另一扇窗
下一个读代码的人就是你
下一个读代码的人就是你
iOS团队开发实践经验
iOS团队开发实践经验
2013年京JS参会分享
2013年京JS参会分享
一个顽强的bug修复经历
一个顽强的bug修复经历
Using Shell & Mastering Shell
Using Shell & Mastering Shell
正则指引
正则指引
WireMock 起飞手册
1.
WireMock 起⻜飞⼿手册 shengxuanwei 2016-11-09 1
2.
我们遇到的问题 • 由于 API
开发限制,开发依赖接⼝口交付 • 由于 API 不不可靠,开发和集成测试频繁失败 • 由于 API 数据限制,测试不不同的数据集⾮非常困难 2
3.
我们的解决⽅方案 WireMock is a
library for stubbing and proxying web services. http://wiremock.org/ 3
4.
特点 • 模拟⽹网络请求 • 错误注⼊入和模拟⽹网络异常 •
录制与回放 • 单元测试或独⽴立使⽤用 • 搭建环境简单,容易易上⼿手 4
5.
5
6.
6
7.
7
8.
8
9.
待解决的问题 1. 代理理设计 2. 透明代理理和⽤用 户感知 3.
HTTPS 和 MITM 4. 触发条件设计 5. 请求匹配规则 6. GET 接⼝口返回模拟 7. POST / DELETE 接⼝口 返回模拟 8. 情景操作模拟 9. ⽹网络延时模拟 10.分发与部署 11.规范和维护 12.…. 9
10.
代理理设计 • Reverse Proxy
1,代理理连接 Charles 或 Fiddler,通过 Map Remote 映射 API 请求 • Reverse Proxy 2,修改 SERVER_HOST, 直接连接 WireMock 10
11.
透明代理理和⽤用户感知 • 如果匹配 Match
规则,就返回 Mock 数据。如果不不 匹配 Match 规则,就请求 API 数据,Mock 数据和 API 数据混⽤用,⽤用户⽆无明显感知 • 通过 Priority 请求匹配规则和 proxyBaseUrl 参数 • 怎么设计前端⽤用户感知,让⽤用户分辨看到是 Mock 数 据还是 API 数据 11
12.
HTTPS • 将 wiremock.jks
⽂文件放到 keystore ⽬目录 • ⼿手机下载安装 wiremovk.p12 证书⽂文件 12
13.
触发条件设计 • 问题是什什么样的条件触发 Mock
数据,既能达到 Mock 效果,也不不影响整体使⽤用? • 可能的条件,特定⽤用户、城市、品牌、价格等等 • 触发条件的可达性,稳定性,兼容性 13
14.
请求匹配规则 • URL • HTTP
Method • Query parameters • Headers • Request body 14
15.
URL 匹配 • url •
urlPath • urlPattern • urlPathPattern 15
16.
HTTP 头部属性匹配 • equalTo •
contains • matches • notMatch • absent 16 queryParameters headers/X-RAW-PARAMETERS
17.
JSON 或 jsonBody •
GET 请求采⽤用 JSON ⽂文件保存 • POST / DELETE 请求推荐采⽤用 jsonBody • JSON 使⽤用中⽂文编码保存 • http://www.bejson.com/convert/unicode_chinese/ 17
18.
有状态的⾏行行为(场景) • scenarioName • requiredScenarioState •
newScenarioState 18
19.
⽹网络延时模拟 • fixedDelayMilliseconds • delayDistribution
: lognormal, uniform 19
20.
分发与部署 • 通过 Git
来管理理和分发配置 • 独⽴立部署 • API 前端部署 20
21.
规范与维护 • mapping_Method_urlPath_statusCode_queryParam eters_scenarioState.json • body_Method_urlPath_statusCode_queryParameter s_scenarioState.json 21
22.
API 开发流程重设计 1.API proposal
in wiki 2.Discussions 3.Agree 4.Mock it! 5.Profit 22
23.
The End. 23
Download now