- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何对具有大量请求负载的 REST API 进行自动化测试
如何在几秒之内创建出几十个具有大量请求有效负载的REST API 测试用例? 采用科学的方法进行测试有助于创建REST API 的自动化测试,但即使是科学家有时也需要帮助。
测试人员是应用程序和对技术日益精通的用户之间的最后一道防线。如果我们发布的应用程序有缺陷或者是执行问题,这将使我们失掉来之不易的用户和市场。因此,测试人员必须足够聪明,能够以最有效的方式测试应用程序。测试也是一门科学,需要你采用系统的方法来验证应用程序。
测试是一门科学
即使有科学的测试方法,软件测试也不是那么简单。测试人员通常要经历以下过程:
问一个问题,通常是关于应用程序的行为(需要相当多的创造力)
通过基础研究去了解多个接口 (web, mobile, API, etc.),如何准确地测试它们, 以及应用程序应该如何运行。
构建一个假设(例如断言和回归测试)。基于你对应用程序“应该如何工作”的理解, 你可以设置期望的变量值。
通过构建测试来验证之前的假设(以尽可能有意义的方式,这样你就可以有效地证实或证伪相关的假设(断言/回归))。
分析结果并得出结论.。在运行测试并接收结果之后,你可以手动解释以查看它们是否满足你的期望,或者你可以将测试执行自动化,以便使其仅对失败测试的进行报告。
将测试的结果传递给公司团队,以便组织能够做出是否继续发布或使用应用程序的有意义的决定。
测试不是一件简单的事情,所以我们需要尽一切可能支持测试以便使其能够提供有意义的反馈,确保应用程序都能得到正确的构建。对于测试人员来说,将我们发现的可以使测试更高效更便捷的方法分享给彼此是很重要的!这里,我将列举其中的一个方法。下面我会解释最近遇到的一个测试挑战,并分享我是如何解决这个问题的。
测试具有大量有效请求负载 REST API
因为 JavaScript 代码很容易使用JSON 数据,所以现代 web 应用程序从浏览器向服务器发送REST 类型的 JSON API 调用。但是使用JSON 数据创建测试自动化脚本并不是那么容易。最近,我遇到了一个测试难题,因为在我正在测试的服务中含有大量JSON 请求的有效负载。我选择使用Parasoft SOAtest —— 一款新的智能 API 测试生成器来帮助我进行测试,与大型请求有效负载不同,大型响应有效负载对于测试人员来说很容易处理。调用服务,保存响应,然后比较与将来响应的差异。去掉任何可能不断更改的值,例如日期或时间戳。删除重复的方法,但是,这首先是基于服务调用。对于大请求的有效负载,在进行每个服务调用之前需要配置大量数据,并且需要确保所有数据都是正确的。当然,你可以从浏览器开发工具复制和粘贴,但是对于大量的REST API 调用,这意味着无休止的复制和粘贴。这就是为什么现在能够使用智能API 测试生成器是如此的令人兴奋。
我最近的项目涉及一个web 配置页面,用于集成LDAP 和 Active Directory 服务器。概念很简单:配置设置,然后通过列出用户和组帐户进行测试问题是LDAP 配置有很多设置, 测试这些设置需要在请求的有效负载中发送所有设置。此外,还需要额外的调用来测试每个组的成员身份。每个请求最后都是数百行JSON 数据。
我的工作是增加新会员策略的支持。我唯一关心的 JSON 数据是在第 10 行,但是要使得整个工作正常进行,仍然需要使用其他所有数据行。因此,我设置了我的配置页面,指向一
个具有测试数据的LDAP 服务器,指定 chrome 为默认浏览器并使用智能API 测试生成器打开录制功能。我单击按钮来测试用户和组,并展开每个组以查看成员。每次单击时,都会对web 服务器进行一些REST API 调用。
假设会员策略会影响预览版中的群组和会员。我在配置页面上更改了成员资格策略, 并再次单击测试数据。视觉上,我可以在对话框中看到不同的组成员结果。我对我的手工测试很满意,所以我停止了记录,并生成了一组非常智能的API 测试:
就在几秒钟内,我得到了一套包含几十个REST API 测试,这些测试都有巨大的请求的有效负载。在请求之间只有一些属性(如组名和成员策略)发生了更改,但这足以获得响应的变化,并为每个请求保存一个差异控件。它甚至足够智能,可以从第一个组预览响应中提取组的名称,并将它们存储到数据库中,以便在接下来的测试中使用。当看到所有的测试都通过了,我相信我的新会员策略特性是正确的。
这都是使用带有测试数据而不是真实用户帐户的LDAP 服务器完成的。我可以确保测试数据不会改变,但是真正的用户会随着时间的推移而变化。在自动测试回归控件中,更改数据会产生很多影响。如果你的应用程序没有稳定的测试数据, 我建议你使用 Parasoft Virtualize 检查
您可能关注的文档
最近下载
- 事故隐患治理排查制度.docx VIP
- 阿坝州面向社会公开招募新兴领域党建工作专员考试备考试题及答案解析.docx VIP
- 麻柳河村四议两公开一监督制度.doc VIP
- 《无机非金属材料》课件.ppt VIP
- 电力工程项目建设用地指标(风电场)(建标〔2011〕209号).pdf VIP
- 天津中考语文5年真题(21-25年)分类汇编教师版——综合性学习.docx VIP
- 虹鳟网箱养殖技术规范.pdf VIP
- 重大事项合法合规论证审查管理规定.docx VIP
- 建设工程安全生产管理条例安全生产管理条例2025.docx VIP
- 天津中考语文5年真题(21-25年)分类汇编教师版——字音字形.docx VIP
原创力文档


文档评论(0)