I initially spent far too many hours struggling against Selenium while trying to test Stripe for my personal project in Mod 3, putting me at a bit of an advantage for implementing JS feature tests at this point. I learned a lot from a lot of mistakes, but also had set up the entire environment and worked out the bugs, so re-implementing Selenium-based feature tests for idea box was pretty simple.
- Firefox version incompatible with Selenium (...but didn't realize until I got to the bottom of this list and worked my way back up it)
- Chrome is stupidly complicated to set up with Selenium
- Unable to use any headless driver to test Stripe (it's very picky)
- Capybara doesn't care about CSS conventions like an ID with a leading digit but capybara-webkit does. (Surprise, I had some and didn't understand why it broke things) After trying all these things from the top down, I ended up going back from the bottom up until I got Selenium working properly. All these compounding and unrelated variables made it rather difficult.