首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验收测试侧重于传出的http请求

问验收测试侧重于传出的http请求
EN

Stack Overflow用户
提问于 2016-05-09 11:04:37
回答 1查看 203关注 0票数 3

这可能看起来是一个奇怪的问题,因为我还没有看到任何在线讨论或教程,所以我假设人们通常不会这样做- but当接受标准是web应用程序由于特定用户交互而发送的特定网络请求时,是否有任何用于自动验收测试的好选项?作为最简单的示例,用户单击一个按钮,页面上的javascript代码发送一个ajax请求。QA团队希望确保请求确实已发送,并且具有特定的参数。现在,一种典型的解决方案是完全忽略网络请求,而是检查此类请求导致的接口更改,但如果请求没有立即产生接口更改怎么办?另一种典型的方法是将这种测试转移到单元测试或集成测试级别的- but,如果QA更愿意看到它在真正的浏览器中工作呢?

那么,编写自动化验收测试的选项是什么,这些测试从浏览器中的一些用户交互开始,然后断言预期的网络请求已经发送?这样的测试需要什么工具(据我所知,Selenium不能独立完成这项工作)?你知道这类测试的任何可用的例子(已经实现它的开源项目,描述如何做的教程,等等),或者你能提供一个详细的例子吗?

EN

回答 1

Stack Overflow用户

发布于 2016-05-13 02:08:40

听起来您想要做的是在测试中模拟来自前端应用程序的Ajax调用。如今,使用Sinon、Angular's httpBackend或jQuery Mockjax (我维护的一个库)等库很容易做到这一点。

您可以在我前段时间编写的blog post中了解更多关于这个主题的内容,但基本思想是在Ajax请求到达核心JavaScript XMLHttpRequest接口(从而发送网络请求)之前拦截它。在您的JS测试中,您可以检查拦截器,以查看是否发出了网络请求,以及向其提供了什么。

如果不知道你的技术堆栈(JS框架、测试框架等),就很难准确地说出你将如何设置它,但看看上面提到的工具。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37107220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档