所以我一直在尝试实现一个Cucumber步骤,对网站发出POST请求,等待请求完成(因为后续步骤依赖于帖子成功)并且如果出现任何问题就中断测试:
this.Then(/^Post file "([^"]*)" and wait for the request to finish$/, function(fileName, callback) {
var request = require("request");
var fs = require("fs-extra");
var options = {
method: 'POST',
url: "https://www.testOver9000.com/",
body: fs.readJsonSync(fileName),
json: true,
auth: {
username: "test",
password: "test"
}
};
request(options, function(error, response, body) {
if (!error && response.statusCode == 200) {
callback(null);
} else {
callback(error);
}
});
});
目前我在这里有两个问题:
任何帮助都将不胜感激。
答案 0 :(得分:0)
我感觉你的测试在触发POST调用之前就失败了。如果以下行失败,我不知道黄瓜是否会默默地失败并进入下一步。
body: fs.readJsonSync(fileName)
你打印错误了吗?是什么版本的cucumberjs?这些答案可以帮助您更好地指导