使用Zombie.js进行Web自动化测试
作者:网络转载 发布时间:[ 2016/2/19 16:40:00 ] 推荐标签:自动化测试 WEB测试
harmonize: 使gulp支持ECMA 6
gulp-develop-server: 用于启动node.js connect based Web Server
gulp-sync: 用于同步运行tasks
gulp-task-listing: 为gulp.js添加help支持, 可以列出gulpfile中的所有tasks.
配置gulpfile
require("harmonize")()
gulp = require 'gulp'
gulpsync = require('gulp-sync')(gulp)
server = require 'gulp-develop-server'
coffeelint = require 'gulp-coffeelint'
mocha = require 'gulp-mocha'
karma = require 'gulp-karma'
coffee = require 'gulp-coffee'
task_listing = require('gulp-task-listing')
gulp.task 'help', task_listing.withFilters null, 'sync'
gulp.task 'coffee:lint', ->
gulp.src(['app/**/*.coffee', './*.coffee'])
.pipe(coffeelint('config/coffeelint.json'))
.pipe(coffeelint.reporter())
.pipe(coffeelint.reporter('fail'))
gulp.task 'coffee:compile', ['coffee:lint'], ->
gulp.src ['app.coffee', './app/**/*.coffee']
.pipe coffee()
.pipe gulp.dest('./dist')
gulp.task 'test:unit', ['coffee:lint'], ->
gulp.src('spec/**/*.coffee')
.pipe(mocha(reporter: 'spec'))
gulp.task 'test:ui', ['coffee:compile'], ->
server.listen path: './dist/app.js'
gulp.src('acceptence-test/**/*.coffee')
.pipe(mocha(reporter: 'spec'))
.on 'error', () -> server.kill()
.on 'end', () -> server.kill()
gulp.task 'test', gulpsync.sync(['test:unit', 'test:ui']), ->
gulp.task 'clean', ->
console.log 'clean task...'
gulp.task 'default', ['clean'], ->
gulp.start 'test'
运行测试
gulp test:ui
运行结果
[11:03:21] Starting 'coffee:lint'... [11:03:22] Finished 'coffee:lint' after 184 ms [11:03:22] Starting 'coffee:compile'... [11:03:22] Finished 'coffee:compile' after 114 ms [11:03:22] Starting 'test:ui'... server listening on 5000 [11:03:22] Development server listening. (PID:6427) User visit admin projects page and has login when click profile button ? should see dropdown menu ? should see project admin item ? should see logout item when click project admin link ? should visit to admin page when click logout link ? should logout ? should redirect to login page User visits login page submits login form ? should be successful ? should visit admin page ? should see profile button with email 9 passing (6s) [11:03:28] Finished 'test:ui' after 6.08 s [11:03:28] Development server was stopped. (PID:6427)
由于已经将test:ui加入到default task中. 直接运行 gulp 便可运行所有测试.
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。

sales@spasvo.com