啄木鸟软件测试培训网:www.3testing.comgit
目的github
· 如何使用SuperTest测试框架,进行API测试npm
· 如何将API测试与构建工具结合json
· 如何将API测试、构建工具与持续集成结合gulp
SuperTest微信
什么是SuperTest框架
To provide a high-level abstraction for testing HTTP,提供一个高级别的HTTP测试ide
Github地址:SuperTestgrunt
如何安装工具
· 命令
npm install supertest --save-dev
· 样例
describe('Test Demo.', function() {
it('Visit URL', function(done) {
request.get('')
.expect(200)
.end(done);
});
});
· 样例原理:经过获取请求的结果,对请求结果进行验证。样例中的验证条件为返回的状态码为200。
自动化API测试:Grunt & Gulp
Grunt篇
什么是Grunt
· The JavaScript Task Runner,JavaScript的构建工具
· 官网:Grunt
安装
· 命令
npm install -g grunt-cli
功能分析
测试目的:请求https://github.com/aimer1124/SuperTestWithGrunt是否能返回状态码200
使用Github来Clonehttps://github.com/aimer1124/SuperTestWithGrunt.git
· /test/module/demo.js:测试脚本
var config = require('../config/endpoints'), request = require('supertest')(config.host[config.env]); describe('Test Demo.', function() { this.timeout(10000); it('Visit ' + config.env, function(done) { request.get('') .expect(200) .end(done); }); }); |
· /test/config/endpoints.js:环境配制
module.exports = { host : { master: 'https://github.com/aimer1124/SuperTestWithGrunt', branch: 'https://github.com/aimer1124/SuperTestWithGrunt/tree/differentENV' }, env: process.env.NODE_ENV || 'master' }; |
· Gruntfile.js:Grunt运行时的命令配制
· package.json:npm 安装时所须要的包
· results.txt:执行结果存放文件
执行
· 命令:grunt
· 运行结果
SuperTestWithGrunt git:(master) ? grunt Running "mochaTest:test" (mochaTest) task Test Demo. Visit master (1640ms) 1 passing (2s) Done, without errors. |
结果分析:Visit master (1640ms)表示测试正常经过;1 passing (2s)表示整个测试所执行的时间和测试所执行的数量
Gulp篇
什么是Gulp
· Automate and enhance your workflow,自动化而且加强你的工做流
· 官网:http://gulpjs.com/
· 中文官网:http://www.gulpjs.com.cn/
安装
· 命令
npm install --global gulp-cli
功能分析
测试目的:请求http://aimer1124.github.io/是否能返回状态码200
使用Github来Clonehttps://github.com/aimer1124/SuperTestWithGulp
· /test/config/endpoints.js:环境配制
var host = {
master: require('./master.js'),
branch: require('./branch.js')
};
var ENV;
module.exports = function(env) {
if (env) {
ENV = host[env];
return;
}
return ENV;
};
· /test/config/master的具体配制
module.exports = {
url: 'http://aimer1124.github.io/',
name: 'master'
};
· /test/module/test-demo.js:测试脚本
var data = require('../config/endpoints'),
request = require('supertest')(data().url);
describe('Test Demo.', function() {
this.timeout(10000);
it('Visit ' + data().url, function(done) {
request.get('')
.expect(200)
.end(done);
});
console.log('You are in ' + data().name);
});
gulpfile.js:Grunt运行时的命令配制
package.json:npm 安装时所须要的包
results.txt:执行结果存放文件
顾翔凡言:
想作软件测试,最好先去作两到五年开发
啄木鸟软件测试培训中心,主打五门课:
初级:
1,你也想成为软件测试工程师吗~软件测试基础教程
中级:
2,软件测试工程师必须掌握的技能~软件测试设计方法实战。
高级:
3,让你的程序跑得更快~软件性能测试
4,让你找出更多的bug~探索式软件测试
5,让用户迷上你的产品~用户体验式测试
本文分享自微信公众号 - 软件测试培训(iTestTrain)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。