Closed Esthenia-collaboration closed 2 weeks ago
The thing that will be important for this is XVFB and the DISPLAY variable, without a display browsers crash on Linux even when run in headless mode (I learned this the hard way), you don't need a desktop environment or window manager, just X or wayland, XVFB is the easiest solution to setup when you have no video card (e.g. in a docker container)
The thing that will be important for this is XVFB and the DISPLAY variable, without a display browsers crash on Linux even when run in headless mode (I learned this the hard way), you don't need a desktop environment or window manager, just X or wayland, XVFB is the easiest solution to setup when you have no video card (e.g. in a docker container)
yes I got this. We've already implemented this at work
For this image we'll need to add some new dependencies: Xvfb (X virtual framebuffer), which allow to run graphical applications in a headless or non-graphical environment. And the associated DISPLAY value. It's better to add this interface dependency in the agent rather than the manager part. So if it's works correctly, we'll remove this part from the manager. All the dependencies linked to Selenium installation and the browser's driver as well. For this image we're going to create one image for each Browsers type (Chrome, firefox, edge) We'll do separate images to avoid having a Big image's size in this case. We'll need the name the different images with explicit names such as:
[x] rfswarm-agent-seleniumlibrary-chrome
[ ] rfswarm-agent-seleniumlibrary-firefox
[ ] rfswarm-agent-seleniumlibrary-edge
### IMPORTANT: I'll complete the issue description with all Selenium image dependencies
This simple test example from Dave's rfswarm project might be use to run some simple tests: https://github.com/damies13/rfswarm/tree/master/Tests/Regression/Agent/testdata/Issue-%23171