我正在尝试测试我的节点应用,我能够发布,获取并投入工作,但我无法删除工作我继续得到以下错误“Type.Error app.address不是函数“
这是我的测试类:
dd %>% group_by(id) %>% filter(year %in% sapply(year[list==1], `+`, c(-1,1)))
这是我的主要课程,具有所有功能:
var supertest = require("supertest");
var should = require("should");
// This agent refers to PORT where program is runninng.
var server = supertest.agent("http://localhost:8000");
// UNIT test begin
describe("Contacts GET unit test",function(){
// #1 should return contacts representation in json
it("should return collection of JSON documents",function(done){
// calling home page api
server
.get("/api/contacts/")
.expect("Content-type",/json/)
.expect(200) // THis is HTTP response
.end(function(err,res){
// HTTP status should be 200
res.status.should.equal(200);
done();
});
});
it("should add a new contact",function(done){
// post to /api/contacts
server.post('/api/contacts')
.send({name:"Contact 99"})
.expect("Content-type",/json/)
.expect(201)
.end(function(err,res){
res.status.should.equal(201);
done();
});
});
it("should update contact",function(done){
// post to /api/contacts
// calling home page api
server.put("/api/contacts/58e275d0aef2392e10eaba6e")
.expect("Content-type",/json/)
.expect(200) // THis is HTTP response
.end(function(err,res){
res.body._id.should.equal("58e275d0aef2392e10eaba6e");
done();
}
);
}
);
it("should delete contact",function(done){
// post to /api/contacts
// calling home page api
const superserver = supertest(server);
server.get("/api/contacts")
.expect("Content-type",/json/)
.expect(200) // THis is HTTP response
.end(function(err,res){
const id = res.body[0]._id;
server.delete("/api/contacts/"+id)
.expect("Content-type",/json/)
.expect(200) // THis is HTTP response
.end(function(err,res){
res.body._id.should.equal(id);
res.body.should.have.property("name");
done();
}
);
}
);
});
});
答案 0 :(得分:0)
我不确定它是否有帮助,但在你的测试类中问题似乎在这里(l.62):
const id = res.body[0]._id;
它返回undefined,因此你得到一个Type.Error
您应该尝试调试此行并检查返回:
res.body[0]
PS: api \ contacts \ test \ testContancts.js 确定名称文件?