我發現這個模塊https://www.npmjs.com/package/protractor-image-comparison來自wswebcreation-nl,我發現這個模塊對我來說很有趣和有用。然而,我對量角器還不是很擅長,但我在比較整頁屏幕時遇到了問題。然而,比較元素圖像是有效的,但仍然會引發錯誤。量角器:如何比較全頁截圖與量角器圖像比較
Config.js
onPrepare: function() {
// protractor-image-comparison module
const protractorImageComparison = require('protractor-image-comparison');
browser. protractorImageComparison = new protractorImageComparison(
{
autoSaveBaseline: true,
baselineFolder: '../baseline/',
screenshotPath: '../actual_screenshots/',
debug: true,
disableCSSAnimation: true,
nativeWebScreenshot: true,
blockOutStatusBar: true,
ignoreColors: true
}
);
...
}
Spec.js
// page objects
var landingPage = require('../landing_page/landing_page.js');
describe('User is on landing page', function() {
it('should see landing page screenshot compared successfully to the baseline', function() {
// initialize page object
var landing = new landingPage();
browser.protractorImageComparison.saveElement(landing.registerButton, 'imageA');
expect(browser.protractorImageComparison.checkElement(landing.registerButton, 'imageB')).toEqual('imageA');
});
});
一旦測試完成後,我在所有文件夾(基線,actual_screenshots /實際和actual_screenshots/DIFF元件的屏幕截圖。
控制檯出錯:
規格開始。用戶在着陸頁 √應該看到註冊按鈕
#################################### ########## compareOptions = {isScreen:假,ignoreAntialiasing:假,ignoreColors:真,ignoreRectangles:[],ignoreTransparentPixel:假}
#F×應該看到着陸頁截圖與 基線成功比較 - 預期0到等於'imageA'。
當我使用'browser.protractorImageComparison.saveFullPageScreen('imageA'); expect(browser.protractorImageComparison.checkFullPageScreen('imageB'))。toEqual('imageA');'然後錯誤是**失敗:browser.protractorImageComparison.saveFullPageScreen不是一個函數**。 – jurijk