Conversation
moved engine scripts
removed impossible feature for now
removed impossible feature for now
|
waiting for feedback. current blocker is settting window size .... |
|
Wow. This looks like a lot of work. I think I'll add a |
|
not that much work (1 evening + 1 day) I just tried to replace puppeteer everwhere with wdio. so incremental exchange commands puppeteer: wdio: copied the engine scripts and converted them aswell ... (I need to spend a bit more time on it, before I would remove the WIP - like the window size height thing is most confusing me) But sure I will try to finish that pull request soon, but I like to make my work transparent (therefore WIP) |
- added configurable wdio config (services will not work, they will need some kind of integration) - height is still wrong in wdio
|
Some features are missing in wdio standalone, that should not be part of that project. |
|
As suggested in webdriverio/webdriverio#7185 this should not be part of wdio core, so I added service handling directly in backstopjs, need to verify if that solution works (just tried out with selenium-standalone-service) |
process env variables - moved wdio service shutdown to bettr position - added sample configuration - added todo for checking startup services -
- cleaned up a bit - [fixed] service handling of wdio-remote
As there are some possibilities I am not sure which one I would use, added warning for now that feature is not supported with webdriverio - added test config for browserstack
garris
left a comment
There was a problem hiding this comment.
Left some comments -- thanks for working on this!
README.md
Outdated
| - Incredibly easy to use: just 3 commands go a long long way! | ||
| - [BETA] Limited Support for WebDriver Protocol, based on wdio | ||
| - works as well with any wdio-(cloud)-service (see [wdio configuration]() ) | ||
| - not compatible with puppeteer references pictures |
There was a problem hiding this comment.
I had some issues with directly comparing, backstopjs puppeteer pictures with wdio pictures.
- screensize is different a bit (still need to investigate if that what goes on, but due sickness&work I couldn't find the time)
- puppeteer does a full page picture, webdriver captures only viewport => In theory, should be possible to merge the viewport images to a full page picture, wdio plugin is outdated
- image interception is not possible without a proxy solution, due selenium limitation
Therefore I added a BETA support, so maybe some people get interessted to work on it.
There was a problem hiding this comment.
Oh, it is very very unlikely that you could ever render a reference image in puppeteer and then be able to test that against a test image generated in WDIO. Or vice versa. In addition to different high level rendering interpretations of the different application environments, there will also be a low-level rendering issue because different hardware will dither bitmap text differently. For example you can see this explanation.
TLDR; Screenshots generated by a single hardware, software and platform combination can only be compared against itself.
|
@garris Regarding the different environments, I just added it into the readme to warn people that cross engine will not work. But as it is already written in the readme, might be better as a own section... |
Reason behind that pullrequest is, to integrate wdio. This will allow BackstopJS to use selenium/webdriver standards.
Currently the branch is Work in Progress, but feel free to have a first look.
@garris I tried to do as less changed as possible, so you can faster review it.
One thing I saw is that comparing puppeteer and wdio might not so easy and require more changes, but I would still merge it and say "Use puppeteer with Firefox/Chrome or ANY browser/device with wdio)