Discussion on BiDi-ing Farewell to Cross-Browser Automation Headaches by Matthias Rohmer | Testμ 2024

The original plan was for it to work with Chrome, but some other browsers like Edge and Firefox have parts that work with it through developer tools. But BiDi is working on making it work with all the big ones.

BiDi fixes problems like not all browsers working the same for automation and making it easier to talk back and forth with the browser. The old way, WebDriver, only let you talk one way, but BiDi lets you do it both ways, giving you more control and live updates.

One of the toughest parts is dealing with the small differences in how each browser handles CSS, JavaScript, and the structure of web pages. Another hard part is finding bugs that only happen on certain browsers in a way that works for testing. BiDi makes it easier by offering better tools for finding and fixing these issues.

When testing apps that work on different devices and browsers, it’s important to check how they work with different network conditions, how they act when not connected, and if they work the same on all devices and browsers. Tools like BiDi can help by creating different situations to test how the app works across different browsers and platforms.

BiDi is still being worked on, so it might not have all the features in every browser yet. People who try it first might find some small issues or bugs in browsers that aren’t as popular. Also, getting used to using BiDi might take some time for teams that are used to using WebDriver.

Browsers often act differently, making it hard to catch bugs in real-time, and making it slow for the browser and automation tool to talk to each other. BiDi makes it faster, lets you listen in on events in real-time, and gives you more control over how browsers behave.

The main components include:

  • Test scripts: Written to automate interactions.
  • Browser drivers: To communicate between your tests and the browser.
  • CI/CD pipelines: To ensure continuous testing.
  • Test environments: Including different OS/browser combinations.

BiDi does need some coding skills, especially for writing test scripts and setting up automated tasks. But its easy-to-use setup makes it simpler for both developers and testers to get started.

BiDi talks directly with the browser’s API, which lets you tweak browser settings and options by sending and receiving messages. This makes it simpler to change things like screen size, internet conditions, or browser features while testing.

Fixing browsers like WebKit and Firefox can cause problems with testing because you’re not using the normal way they work. This could mess with how well they work with other browsers if the fixes change how they act in ways not seen in regular browsers.