什么是打桩服务
发布于 2023-08-22
3657
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
Bruce Talk
扫码关注公众号
扫码阅读
手机扫码阅读
文章摘要
前言
开发团队经常面临第三方服务集成问题,导致开发工作延迟或停止。接口测试人员同样抱怨依赖真实服务(如SharePoint, Microsoft 365)导致测试速度慢、效率低。接口测试常变为端到端测试,效率低下。在TDD领域,code级别的解耦测试使用mock技术,而接口测试层面可以利用打桩服务来模拟第三方服务。
什么是打桩服务
打桩服务是一种非侵入性模拟技术,允许模拟第三方服务的功能,从而在测试时快速返回预设内容,无需真实调用第三方服务。
打桩服务与Mock服务的区别
打桩服务与TDD中的Mock服务主要区别在于层面不同,打桩服务属于应用层面,Mock是code级别。Mock侧重行为验证,而Stub(打桩服务的一种形式)侧重于状态验证。
mountebank介绍
mountebank是一个由ThoughtWorks工程师Brandon Byars开发的基于Node.js的打桩服务平台,用于微服务测试。它支持条件响应、代理响应、响应行为设定、脚本注入等功能,是开源的,并且支持多种通讯协议及客户端类库。
mountebank的优势
- 条件响应:根据请求参数设定不同响应。
- 代理响应:控制Stub后端请求是否调用真实服务。
- 响应行为设定:按测试场景设定响应行为,如延迟响应、重复响应等。
- 脚本注入:使用JavaScript脚本增强功能,以适应特定场景。
- 支持多种通讯协议:如http, https, tcp, smtp。
- 多客户端类库支持:支持多种编程语言的原生类库。
参考引用
更多信息可访问mountebank的官方网站:http://www.mbtest.org/
Bruce Talk
Bruce Talk
扫码关注公众号
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
查看方案
Bruce Talk的其他文章
Scrum Master如何参与每日Scrum
作为Scrum Master,每日scrum我们如何参与,如何对待呢?
重新理解“软件工程”
说了也听了这么多年“软件工程”,我们真的知道“软件工程”要解决的东西吗?
Copilot Studio使用初体验
AI的飞轮已经旋转起来,让我们适应并寻找和他的相处之道吧。
从一个乙方视角聊聊敏捷项目
敏捷开发是否适合软件项目?还是只能在产品研发中发挥作用?让我从乙方的视角聊聊感受。他们之间确实有不同的地方,但也有相似的方面。
探密"一学就会,一用就废"的OKR
最开始接触OKR的就是看过几本书,也从网上搜了一些资料,觉得概念不难。尝试用过几次但总觉得哪里不对,怪怪的。
加入社区微信群
与行业大咖零距离交流学习
PMO实践白皮书
白皮书上线
白皮书上线