evf*_*qcg 3 javascript testing io tdd node.js
我正在构建一个小命令行工具,我遇到了测试问题.
如何测试当前进程写的"omg" stderr?
process.stderr.write("omg")
Run Code Online (Sandbox Code Playgroud)
如果你还没有安装Mocha:
npm install -g mocha
Run Code Online (Sandbox Code Playgroud)
shouldpass.js:
process.stderr.write('omg')
Run Code Online (Sandbox Code Playgroud)
shouldfail.js:
process.stdout.write('not omg on stderr')
Run Code Online (Sandbox Code Playgroud)
test.js:
var exec = require('child_process').exec
, assert = require('assert')
describe('run tests', function(){
it('should pass', function(done) {
exec('node ./shouldpass.js', function(err, stdout, stderr) {
assert.equal(stderr, 'omg')
done()
})
})
it('should fail', function(done) {
exec('node ./shouldfail.js', function(err, stdout, stderr) {
assert.equal(stderr, 'omg')
done()
})
})
})
Run Code Online (Sandbox Code Playgroud)
跑步:
mocha test.js
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1220 次 |
| 最近记录: |