Node.js nodejs/mocha/nock-模拟整个html响应
如何为测试模拟整个HTML主体响应 我用的是nodejs/mocha/nock 使用nock,我可以很好地模拟JSON响应,例如:Node.js nodejs/mocha/nock-模拟整个html响应,node.js,unit-testing,express,mocking,mocha.js,Node.js,Unit Testing,Express,Mocking,Mocha.js,如何为测试模拟整个HTML主体响应 我用的是nodejs/mocha/nock 使用nock,我可以很好地模拟JSON响应,例如: nock('http://myapp.iriscouch.com') .get('/users/1') .reply(200, {_id: "123ABC", _rev: "946B7D1C", username: 'pgte'}); 我使用curl-o获取我想要的用于模拟的html,因此我已经将其保
nock('http://myapp.iriscouch.com')
.get('/users/1')
.reply(200, {_id: "123ABC", _rev: "946B7D1C", username: 'pgte'});
我使用curl-o
获取我想要的用于模拟的html,因此我已经将其保存在一个文件中,但是我不知道如何将html文件传递给nock(或其他东西)
谢谢。首先获取测试文件的HTML内容并将其放入字符串中(例如使用
fs.readFile
)
之后,您可以执行以下操作:
nock('http://myapp.iriscouch.com').
get('/users/1').
reply(200, yourFileContent);
这就是我过去的做法:)
如果愿意,可以显式指定内容类型,因为将主体指定为字符串,这将有效地让您轻松模拟任何非二进制响应:
nock('http://myapp.iriscouch.com').
get('/users/1').
reply(200, yourFileContent, {'content-type': 'text/html'});
如果你想要一个更一般的方法,我问了一个类似的问题,得到了一些有趣的回答