我刚开始使用CodeceptJS,但在使mykosts001 192.168.18.118
mykosts002 192.168.18.119
mykosts003 192.168.18.120
mykosts004 192.168.18.121
命令正常工作时遇到了一些麻烦。
这是我到目前为止的测试代码:
seeVisualDiffForElement
当我运行此代码时,它将打开Chromium浏览器(因为我将其与Puppeteer一起使用)并在第一种情况下正常运行。截取屏幕截图并将其另存为基本图像。然后,我必须关闭浏览器才能运行下一个场景。运行第二种方案后,它无法通过测试,但仍会创建屏幕截图。屏幕快照应该有所不同,但是diff屏幕快照没有任何概述的更改。
在CodeceptJS的文档中,它指出“ Feature('MyTest');
Scenario('Creating base images and comparing using the same command but ran twice', (I) => {
I.amOnPage('https://testsite-90d35.firebaseapp.com/');
I.wait(1);
I.saveScreenshot("Test1.png");
I.wait(1);
I.seeVisualDiff("Test1.png", {tolerance: 0, prepareBaseImage: true});
});
Scenario ('Comparing the blue button on the page', async (I) => {
I.amOnPage('https://testsite-90d35.firebaseapp.com/testPage.html');
I.wait(1);
I.saveScreenshot("Test1.png");
I.wait(1);
I.seeVisualDiffForElement(".btnBlue","Test1.png", {tolerance: 0, prepareBaseImage: false});
});
仅在浏览器中打开baseImage的页面时才起作用,以便webdriver可以获取所提供选择器的坐标”。我的浏览器处于打开状态,但与创建基本映像的浏览器不同(因为我必须关闭它才能运行第二种情况)。这可能是测试失败并无法识别任何更改的原因吗?还是有人可以看到我做错了其他事情?
我也尝试将测试作为单个方案运行,但是它给了我相同的输出。
答案 0 :(得分:0)
我被告知元素测试仅适用于WebDriver,但是我使用的是Puppeteer,因此会出现错误。