Thoughts on SW testing and quality

Fake data的使用和产生

Python篇

什么是Fake data Fake data顾名思义假数据,是在真实产品数据无法使用的情况下,产生地接近于产品环境的数据,多用于开发和测试。 Fake data的使用场景 有哪些开发或测试场景会使用fake data? 当你需要开发一个UI原型,但是API还没开发完成继而无法获取相关数据来显示到前端,这个时候,就可以使用mock data来模拟API,从而不阻碍UI的开发工作且使UI...

Chakram学习笔记

chakram模块基本用法

这篇文章会通过具体例子介绍chakram模块的常用验证方法。 HTTP GET 使用chakram.get(url, params)完成一次HTTP GET请求。此方法返回的promise对象最终会被resolve成一个ChakramResponse对象。 Chakram把HTTP请求的结果封装到了一个ChakramResponse对象里面。这个对象常用的属性有 body - Th...

Chakram学习笔记

chakram-expectation模块基本用法

这篇文章会通过具体例子介绍chakram-expectation模块的常用验证方法。 状态码验证 status code 使用chakram-expectation.status(code)检查response的状态码 it("should allow checking of the response's status code", function () { return cha...

Chakram学习笔记

基本概念

什么是Chakram Chakram可以让API testing更简单,它可以让你写出直接易懂的E2E测试,保证JSON REST endpoints工作的正确性。不过,暂不支持非JSON的数据格式。 Chakram是基于node.js、mocha、chai和request打造的,所以Chakram可以提供BDD式的测试风格和处理promises。 整个Chakram有两大模块组成: ...

敏捷团队中的测试策略

这篇文章主要总结了我对于敏捷项目中总体测试策略的理解,主要来自于工作上的实践和思考。 测试策略的定义 先看下维基百科上关于test strategy的定义 A test strategy is an outline that describes the testing approach of the software development cycle. It is create...

chai学习笔记

expect API学习

Chai是具有BDD/TDD风格的验证库,可以运行在node和浏览器环境中,一般和各类JavaScript框架一起使用。本文主要介绍在node环境中的使用。 为什么说Chai同时具有BDD或者TDD风格呢?因为Chai提供了不同风格的接口 should和expect接口提供了BDD链式风格,是一种更加易读的风格 tea.should.have.property(...

mocha学习笔记

第二部分

测试持续时间 在测试报告里面,测试时间会被展示出来;如果时间过长,也会被标记出来。 使用this.slow(time)可以告诉Mocha该测试执行了多少时间才会被认为是一个耗时过长(slow)的测试,从而需要高亮这个测试。 describe('something slow', function() { this.slow(10000); it('should take lon...

mocha学习笔记

第一部分

Mocha是什么 Mocha是一个Javascript测试框架。只要是Javascript能运行的地方,都可以运行mocha。其主要特征是能够使得异步测试更加简单以及提供了精确的报告。 安装方法 使用npm全局安装 npm install -g mocha; 作为开发依赖本地安装 npm install --save-dev mocha 一个简单的例子 var assert = re...

如何在敏捷项目中快速地设计出高覆盖率的测试用例

针对故事卡手工验收测试的设计

在敏捷项目的快速迭代中,QA要负责和推动多个质量保障活动比如需求分析、过程改进、风险管理、自动化测试开发维护和故事卡验收测试等;其中留给故事卡验收测试的时间是有限甚至是紧迫的,但是质量要求却一点也不能放松。 那么如何在敏捷快速迭代交付压力下快速地进行故事卡验收测试?由于故事卡验收测试中的测试设计是最花精力和时间的,所以这个问题又可以进一步分解为下面两个子问题: 如何快速的进行测试设计...

我的乌托邦项目

在最近几年的工作的项目都是离岸交付的敏捷项目,工作时间越长我越会思考我理想的项目是什么?我想在什么样的项目下工作来帮助个人的成功?不同的项目是否有着相似的特点?是否存在一个“标准化”的项目实践来指导我们把项目做好? 为了回答上面这些问题,我结合近几年的工作经验和项目经历,总结了下面的维度和实践。这些维度和实践都是可以落地,在我们新起项目的时候可以参考来创建项目标准,也可以在项目还处于交付中...