外部集成 网页制作_外部服务的集成测试

外部集成 网页制作

我们的系统通常依赖于第三方服务(它们甚至可能是我们无法控制的公司内部服务)。 此类服务包括公开API的社交网络,带有诸如Salesforce,身份验证提供程序之类的API的SaaS或我们系统与之通信但不在产品生命周期内的任何系统。

在常规的集成测试中,我们将对所有子系统进行集成部署,以测试它们如何协同工作。 但是,在使用外部服务的情况下,我们只能使用实际部署(考虑到一些API凭据)。 我们必须编写集成测试哪些选项,即检查我们的系统是否与外部系统正确集成?


如果该服务提供了一个沙箱,那就是要走的路–您可以在目标环境中进行任何操作,并且该环境将短暂存在,并且对任何最终用户都不可见。 但是,这很罕见,因为大多数外部服务都不提供此类沙箱。

另一个选择是拥有集成测试帐户-例如,您在Twitter上注册一个名为“您的产品测试”的应用程序,创建一个测试Twitter帐户,并将这些凭据提供给集成测试。 如果您没有涉及多步交互和很多前提条件的复杂场景,那将很好用。 例如,如果您的应用程序在一段时间内分析了推文,则您过去无法使用测试帐户发布推文。

第三种选择是模拟。 通常,模拟和集成测试是互斥的,但在这种情况下不是互斥的。 您不想测试外部服务是否符合其规范(或API文档),而是想要测试您的应用程序是否以正确的方式调用它并正确处理其响应。 因此,可以运行外部系统的模拟程序,该模拟程序以预定义的标准集返回预定义的结果。 这些结果和标准应直接符合规格。

通过运行嵌入式模拟服务器可以轻松实现。 有多种工具可用于执行此操作-以下是其中一些Java列表-WireMock , MockServer , MockWebServer , Apache Wink 。 前三个是为上述用例专门创建的,而Apache Wink具有一个简单的模拟服务器类,作为较大项目的一部分。

因此,如果要在每次成功购买后测试应用程序是否正确发布了推文,则可以(例如,使用WireMock)执行以下操作:

@Rule
public WireMockRule wireMockRule = new WireMockRule(8089);@Test
public void purchaseTweetTest() {stubFor(post(urlEqualTo("/statuses/update.json")).willReturn(aResponse().withStatus(200).withHeader("Content-Type", "application/json").withBody(getMockJsonResponse()));// ...purchaseService.completePurchase(purchase);verify(postRequestedFor(urlMatching("/statuses/update.json")).withRequestBody(matching(".*purchaseId: " + purchaseId + "*")));
}

这样,您将验证与外部服务的通信是否在您的应用程序中得到了正确处理,即,您是否正确集成,但不会在实际系统上进行测试。

当然,这有一个缺点–您在模拟程序中放置的规则可能与外部系统中的规则不同。 您可能对规格/文档有误解,或者可能未涵盖所有特殊情况。 但是为了进行自动化测试,我认为这比支持无法正确清理或设置测试数据的测试帐户更好。

这些自动化集成测试可以与在暂存环境中进行手动测试相结合,以确保即使在实际的外部系统中集成也可以正常工作。

翻译自: https://www.javacodegeeks.com/2014/05/integration-tests-for-external-services.html

外部集成 网页制作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[渝粤教育] 平顶山学院 学前心理学 参考 资料

教育 -学前心理学-章节资料考试资料-平顶山学院【】 第一讲 什么是学前心理学 随堂测试 1、【单选题】幼儿指的是( ) A、3—6岁 B、0—1岁 C、1—3岁 D、7岁 参考资料【 】 2、【单选题】下列哪项不是学前儿童心理学的研究内容之一? A、个体心…

光纤收发器性能级别及价格介绍

光纤收发器的使用原理都是一样的,但根据不同的布线技术、温度、湿度、抗雷性等环境要求,光纤收发器基本可以分成三种级别工业级、电信级和普通网络级。接下来,就由飞畅科技来为大家详细介绍下光纤收发器的性能级别及价格,感兴趣的…

[渝粤教育] 新乡医学院 大学生心理健康教育 参考 资料

教育 -大学生心理健康教育-章节资料考试资料-新乡医学院【】 第一章单元作业 第一章单元测试 1、【单选题】1989年世界卫生组织又一次深化了健康的概念,在其中补充了 A、 参考资料【 】 2、【单选题】大学生心理健康的标准不包括 A、 参考资料【 】 3、【单选题】开…

JDK 13:VM.events已添加到jcmd

CSR( 兼容性和规范审查 ) JDK-8224601 [“提供VM.events诊断命令”]从JDK 13 Early Access Build #24 (日期为2019/6/6 )开始在JDK 13中实现,并通过增强功能JDK- 8224600 [“提供VM.events命令”]。 CSR的“…

[渝粤教育] 昆明理工大学 微机原理与接口技术(付丽霞) 参考 资料

教育 -微机原理与接口技术(付丽霞)-章节资料考试资料-昆明理工大学【】 第一讲测验 1、【单选题】除了单片机这一名称之外,单片机还可称为( )。 A、CPU B、嵌入式微控制器 C、微处理器 D、微处理机 参考资料【 】 2、【单选题】AT89S51单片机…

光纤收发器选购原则

众所周知,我们在实际采购光纤收发器当中,价格跟性能是一个很重要的衡量因素,特别是一些中小型企业。我们一般认为,几百元的产品足以能够满足一般的企业的需求了,除非是一些特殊的行业,例如电信、军事等。当…

[渝粤教育] 武汉大学 自然科学经典导引 参考 资料

教育 -自然科学经典导引-章节资料考试资料-武汉大学【】 第一讲单元测验 1、【单选题】关于自然派哲学家,以下理解不正确的是 A、他们从经验观察出发,指引人们寻找最本质的东西。 B、他们中大都认为万物本原是物质性的,可感的,也有…

[渝粤教育] 武汉理工大学 测试技术 参考 资料

教育 -测试技术-章节资料考试资料-武汉理工大学【】 第1章 测验 1、【单选题】测试技术的发展趋势: 、 、 、 。 A、智能化、集成化、高灵敏化、数字化 B、智能化、集成化、微小化、数字化 C、集成化、高灵敏化、微小化、数字化 D、智能化、高灵敏化、微小化、数字化…

[渝粤教育] 江苏医药职业学院 急救护理 参考 资料

教育 -急救护理-章节资料考试资料-江苏医药职业学院【】 随堂测验 1、【单选题】在意外事故现场,对受难者诊断是否心跳停止,最迅速有效的方法是 A、听心音 B、观察心尖搏动 C、 测血压 D、摸颈动脉搏动 参考资料【 】 2、【单选题】两人协同对心搏骤停的…

光纤收发器产品的光电介质转换芯片选择性能指标介绍

在以太网光纤收发器设计中,元器件的选择举足轻重,它决定了产品的性能、寿命和成本。光电介质转换芯片(OEMC)是整个收发器的核心。选择介质转换芯片是以太网光纤收发器设计的第一步,也是非常重要的一步,它的…

jboss ejb_使用JBoss AS 7进行SSL加密的EJB调用

jboss ejb加密客户端和服务器之间的通信可为您的系统提供改进的安全性和隐私保护。 这可能是客户的一项重要要求,尤其是在客户端或服务器需要在不受保护的网络中工作时。 本文向您展示了如何在JBoss AS 7中设置SSL加密的EJB调用。 服务器 在服务器端只需完成两件事…

[渝粤教育] 江西财经大学 中国会计准则(全英文) 参考 资料

教育 -中国会计准则(全英文)-章节资料考试资料-江西财经大学【】 1.1 QUIZ 1、【单选题】Who issues Chinese accounting standards? A、Ministry of Finance B、IASB C、FASB D、SEC 参考资料【 】 2、【判断题】Accounting standards are the basic p…

反射选择器表达式

Java :: Geci是在单元测试期间运行的代码生成器。 如果生成的代码适合源代码的实际版本,则测试不会失败。 如果需要进行任何修改,则测试会修改源代码并失败。 例如,有一个新的字段需要一个setter和getter,然后访问器生成器将生成新…

光纤收发器不同品牌之间的兼容性互通

目前市面上的光纤收发器品牌跟厂家是愈来愈多,光纤收发器厂家和品牌大部分方案是百兆RTL8306E,IP113C,千兆高通8334,Marvell6122,这几个方案之间的兼容性都不错,可实现互联互通,传输稳定&#x…

[渝粤教育] 沈阳工业大学 模拟电子技术 参考 资料

教育 -模拟电子技术-章节资料考试资料-沈阳工业大学【】 第一周作业 第一周单元测验 1、【单选题】在本征半导体中加入( )元素可形成N型半导体。 A、五价 B、四价 C、三价 D、二价 参考资料【 】 2、【单选题】PN结加正向电压时,空间电荷区将…

[渝粤教育] 深圳信息职业技术学院 《新理念英语》English For You 参考 资料

教育 -《新理念英语》English For You-章节资料考试资料-深圳信息职业技术学院【】 Which is true about the introduction? 1、【多选题】Which of the following is true about the introduction? (多选) A、The employers we talked to told us that they valued employee…

光纤收发器在高清网络视频监控工程项目中的应用

光纤收发器是一种将以太网的电信号和光信号进行互换的以太网传输媒质转换设备,也被称之为光电转换器。而在网络上传输数据的光纤分为多模光纤和单模光纤。接下来我们就来看下什么是单模光纤收发器,什么是多模光纤收发器,了解下光纤收发器在高…

[渝粤教育] 潍坊职业学院 花卉栽培 参考 资料

教育 -花卉栽培-章节资料考试资料-潍坊职业学院【】 庭院常用花卉栽培技术—单元作业 庭院常用花卉栽培技术—单元测验 1、【单选题】属于二年生花卉的是( )。 A、万寿菊 B、波斯菊 C、百日菊 D、羽衣甘蓝 参考资料【 】 2、【单选题】在北方寒冷地区冬天…

[渝粤教育] 盐城师范学院 高等代数 参考 资料

教育 -高等代数-章节资料考试资料-盐城师范学院【】 5.1练习 1、【单选题】 A、 B、 C、 D、以上都不对 参考资料【 】 2、【单选题】 A、 B、 C、 D、 参考资料【 】 3、【单选题】 A、 B、 C、 D、 参考资料【 】 4、【单选题】设有矩阵A,与其合同的是 A、 B、 C、…

Java中的策略设计模式

策略设计模式是一种行为模式,其中我们有多种算法/策略来完成一项任务,所使用的算法/策略留给客户选择。 各种算法选项封装在单独的类中。 在本教程中,我们将学习在Java中实现策略设计模式。 UML表示形式: 首先,我们来…