【发布时间】:2020-05-21 21:10:47
【问题描述】:
我是第一次在 node.js 中进行测试。我在下面创建了一个简单的程序。一个 html 表单有两个字段,名称和年龄。当用户提交表单时,年龄在'ageVerification.js'中的证书函数中检查,因为它应该大于18。如果年龄小于18,则返回null,否则返回一些随机数。有相同的 getAuth 函数抛出错误,然后我将使用它进行测试
expect(auth.getAuth.bind(this,req,{})).to.throw('whatever thrown')
但是如果函数刚刚以 res.send("some string") 结束,那么如何测试函数。提前致谢。
**code to test**
const certificate=require('./ageVerification')
module.exports.getAuth=function(req,res){
if(certificate.certificate(req.body.ageText)!=null &&
req.body.uName=='prateek'){
res.write("Hello Prateek")
return res.end()
}
if(certificate.certificate(req.body.ageText)!=null &&
req.body.uName!='prateek')
return res.send("You need to register first")
if(certificate.certificate(req.body.ageText)==null){
res.write("You are not of required age")
return res.end()
}
}
**test case**
const certificate=require('../ageVerification')
const auth=require('../controller')
const chai=require('chai')
const expect=require('chai').expect;
describe("Age field is null",function(){
it("name is correct",function(done){
const req={
body:{
ageText:null,
uName:'prateek'
}
}
expect(auth.getAuth.bind(this,req,{})).[I'm stuck here ???]
})
})
【问题讨论】:
标签: node.js unit-testing mocha.js chai