Cross-browser integration testing: best scalable solutions?

I'm curious what everyone's using, trying to find IE/Chrome/Safari friendly integration/regression testing solutions.

I'm interested in functional as opposed to visual testing, but that's welcome as well!

Did you find this post useful? Show some love!

Whether or not it fits your criteria, Cypress seems pretty cool and is good to be aware of. I'm interested in playing with it but haven't gotten around to it.

Came across Cypress, definitely interested in the future of it! Right now it's Chromium family only but it's got a ton of potential.

There are a few key additional things you should test, since it appears most sites aren't testing properly:

  • Access via Web proxy. Many sites fail in this configuration.
  • Standard blocking plugins for blocking (like uBlock) and privacy (like Privacy Badger)
  • Access via a IPv6->IPv4 tunnel. Maybe harder to setup, but I've noticed some sites are failing this as well.

Opt for manual testing over automated testing of the UI itself. Not related to web, but I talk a bit about this in this article.

This implies making the UI as thin as possible and testing the API thoroughly. The thinner the UI layer then cheaper the testing becomes.

To add a little here:

I know Selenium is often leveraged for integration testing in mid-to-large-sized companies, and you can use the specific browser drivers to execute on.

For companies not capable of spinning up or supporting their own testing infrastructure, you can leverage BrowserStack.

Something like Protractor.js and Browserstack could provide the type of support needed. It could be cost prohibitive based on testing requirements.

Hi Ryan,

we use Selenium for cross browser testing (including mobile devices). But it is often quite a pain, since the naive idea that "same API" (Webdriver) means that a test case runs equally well on all browsers is simply not true.

You need to tailor test cases a lot to make them run stable on more than one browser/device, which is a lot of work and makes it hard to keep test code clean.
I wrote a bit about that down here: The Selenium Bliss and Pain.

What helps a lot is to have a good testing framework around Selenium. For instance I like a lot Codeception. With a framework like this you can arrange your test code in a way which suits your cross-browser needs.

Classic DEV Post from Mar 28

Why doesn't CSS move faster (like JavaScript)?

JavaScript has always had warts that people put up with—but recently it has evo...

READ POST
Follow @ben to see more of their posts in your feed.
Ryan Killeen
UI-Focused Engineer at thinkcompany.com
More from @ryankilleen
Request for React Monorepo Advice / Pitfalls
#help #javascript #devops
Trending on dev.to
Why You're Not Writing UI Tests
#testing #webdev #productivity #agile
How to build sturdy React Apps with TDD using Jest the React Testing Library
#react #javascript #webdev #testing
What kind of breaks do you take throughout the work day?
#discuss
Three qualities of failed microservices
#devops #microservices #architecture
Dev and Designer Communication
#discuss
How do you keep track of all the great resources you find?
#discuss #learning #resources
What was your first computer?
#discuss
How Art School Prepared Me for Programming
#art #career