【发布时间】:2016-03-29 20:59:29
【问题描述】:
使用 Selenium webdriver (Java Script) 和 Mocha
var assert = require('assert'),
test = require('selenium-webdriver/testing'),
until = require('selenium-webdriver').until,
webdriver = require('selenium-webdriver');
如果测试失败,我想使用 Mocha 的 after 函数截屏:
function writeScreenshot(data, name) {
name = name || 'ss.png';
var screenshotPath = '/result/';
fs.writeFileSync(screenshotPath + name, data, 'base64');
};
afterEach(function () {
if (this.currentTest.state == 'failed') {
console.log("If condition");
driver.takeScreenshot().then(function (data) {
writeScreenshot(data, 'failed.png');
});
}
});
运行测试后,如果条件返回真。但它不会创建屏幕截图。
【问题讨论】:
-
必须等待屏幕截图完成。下面的代码修复了它。 return driver.takeScreenshot().then(function (data) { writeScreenshot(data, 'failed.png');
标签: selenium-webdriver mocha.js