Node 后端开发的几种测试方式

栏目: 编程工具 · 发布时间: 7年前

内容简介:Node 后端开发的几种测试方式

Node 后端开发的几种测试方式

  • Node 后端开发的几种测试方式

后端开发中,只需要针对接口(无 GUI)做自动化测试,还是比较容易实现的,所以在开发过程中尽量写好测试。在这里总结下我在工作中用到的测试方法。这里以 Nodejs 的后端开发为例。

单元测试

单元测试的重要性不言而喻,算是业界共识了。

在有完善的单元测试的基础上,可以很方便地做到持续集成。

提到单元测试,大家很容易想到 TDD,我个人认为 TDD 并不是一件很容易做到的事情,特别是小团队需求多变的时候,往往会追求先出功能后补测试。

集成测试

考拉里的集成测试一般是通过一个接口对 N 个方法进行集成,这个接口会调用 N 个方法。这种集成测试是对单元测试的一种补充。

因为集成测试的粒度比较大,在做测试的时候往往会碰到个很麻烦的问题:怎么准备测试数据?

准备测试数据

测试数据存储位置

使用 js 来存储数据,相对于 json 来说 js 可以编程,例如需要定义一个日期是昨天,json 是做不到的。

Node 后端开发的几种测试方式

在测试开始前载入测试数据

Node 后端开发的几种测试方式

准备测试数据是件比较繁琐的事情,建议直接从生产环境拉取用户数据。脱敏后作为测试数据用。

Node 后端开发的几种测试方式

写个脚本去线上拉取数据

Node 后端开发的几种测试方式

GenTextUserData.test.js

关键点:

mongodump with query

tosource

平行测试

重构用,新写一个方法,新旧方法一起执行,判断结果是否一致。把不一致的结果收集起来。

效果卓群,可以发现很多意想不到的 BUG。

但是比较使用范围有限,只能测试只读的方法。

Node 后端开发的几种测试方式

灰度测试

最实用,成本很低的方案。

灰度发布,只有部分人可以使用新功能,观察一段时间。

全量覆盖测试

使用大量真实数据来测试,真实数据可以提供足够的样本。

例如开发一个新功能,把所有用户的数据 load 进来,模拟使用这个新功能,看看是否有报错。

但是这个做法成本毕竟高,只有重要的功能才需要这样做。

而且用户数据大于百万级别时,整个测试耗时将非常漫长,可以考虑过滤部分用户把量控制在10万以内。

Node 后端开发的几种测试方式

人工测试

在测试环境,作为用户,体验一遍此次开发的功能,看看前面的测试是否有遗漏。

辅助工具

HDC

POSTMAN


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

HTTPS权威指南

HTTPS权威指南

[英] Ivan Risti? / 杨洋、李振宇、蒋锷、周辉、陈传文 / 人民邮电出版社 / 2016-9 / 99.00元

本书是集理论、协议细节、漏洞分析、部署建议于一体的详尽Web应用安全指南。书中具体内容包括:密码学基础,TLS协议,PKI体系及其安全性,HTTP和浏览器问题,协议漏洞;最新的攻击形式,如BEAST、CRIME、BREACH、Lucky 13等;详尽的部署建议;如何使用OpenSSL生成密钥和确认信息;如何使用Apache httpd、IIS、Nginx等进行安全配置。一起来看看 《HTTPS权威指南》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具