TA的每日心情 | 郁闷 2017-3-1 13:43 |
---|
签到天数: 1 天 连续签到: 1 天 [LV.1]测试小兵
|
10测试积点
由于现在的页面太复杂,所以想试着在系统稳定的情况下,使用图片对比来做自动化测试。
比如说;第一个版本,对登录页进行截图,测试完成后,把图片放到指定路径。
下个版本执行的时候,对登录页进行截图,然后后历史文件进行对比
目前遇到的问题是,对比图片的方法,加载图片的时候,截取的图片还没有保存下来
我使用的对比插件用的是 looksSame
https://github.com/gemini-testing/looks-same
use strict';
const step = function () {
//页面元素
const page = require(constants.local.login.page)
//保存文件的路径
const path = constants.Path.patha;
let cUrl = '/';
let res = 8;
this.go = () => {
browser.manage().deleteAllCookies();
browser.get(cUrl);
base.writeScreenShotBVT(path, 'go1');
base.waitUntilUrlChange(cUrl);
expect(browser.getLocationAbsUrl()).toMatch("/login");
base.see(page.loginButton);
expect(browser.getTitle()).toMatch('DART');
//这里运行的时候 会报找不到图片
base.compareImage('go1', res)
browser.sleep(1000);
console.log(res)
browser.sleep(1000);
}
}
//截图
this.writeScreenShotBVT = function (test, id) {
browser.takeScreenshot().then(function (png) {
let stream = fs.createWriteStream(test + id + ".png");
stream.write(new Buffer(png, 'base64'));
stream.end();
});
};
//图片对比
this.compareImage = function (p1,result) {
return looksSame(ph.patha + p1 + '.png', ph.pathb + p1 + '.png', function (error, equal) {
let result = equal
expect(equal).toEqual(true);
return result
});
};
/*---------------
等待元素出现
----------------*/
this.see = (e) => {
browser.waitForAngular();
browser.sleep(2000);
return browser.wait(EC.visibilityOf(e), 10000).then((result) => {
if (result === true) {
return true
}
else {
return result
}
})
}
|
|