加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 嘲笑e2e测试时如何检测API修改?

发布时间:2020-12-17 07:45:10 所属栏目:安全 来源:网络整理
导读:我想为我们团队的项目建立一个坚实的e2e测试基础,但是我找不到一个简单的解决方案: 当您嘲笑所有的电话时,检测服务器返回的对象的实际模型是否已被修改的最佳方式是什么? 您的测试仍然会通过,因为他们正在测试过时的版本的模型,但应用程序可能会损坏. 例如
我想为我们团队的项目建立一个坚实的e2e测试基础,但是我找不到一个简单的解决方案:

当您嘲笑所有的电话时,检测服务器返回的对象的实际模型是否已被修改的最佳方式是什么?

您的测试仍然会通过,因为他们正在测试过时的版本的模型,但应用程序可能会损坏.

例如,如果模拟假设/ api / users / 1返回null(如果用户不存在),当它实际返回一个空对象时,尽管测试可能通过,但被测试的行为依赖于不正确的假设,因此可能以意想不到的方式失败.

或者也许后端是以某种方式提供具有最新最新模式的静态json文件,前端依赖于此?

这当然是假设在后台工作的人和在前台工作的人是分开的团队.

我在这里使用Angular 1.x和量角器,但这并不完全取决于技术.

我想你在做什么(测试期间的前端隔离)是对的,保持这样.

你可以做些什么来验证你的嘲讽是其中之一:

1)如果前端和后端紧密耦合并集成开发 – 为后端添加一组单元测试来验证API响应.
这样一来,如果API发生变化,后端测试就会失败,你会知道前端的嘲讽也应该更新.

在开发过程中,您可以定期运行两套测试(e2e和后端单元测试),甚至可以对每个代码进行更改.

2)如果前端或多或少与后端独立,那么您需要进行一些集成测试,除了e2e测试之外,您还将运行它们.
这些应该对后端执行实际的HTTP请求,并将返回的数据结构与您的嘲笑进行比较.这样你就可以发现嘲笑过时的情况.

第二种方法更可靠,但是集成测试可能会比后端单元测试慢,因此您只能在CI服务器上自动运行它们,而不是在本地开发过程中运行它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读