Member Spotlight: Rainforest Dana Oshiro
Meet Fred and Russell; the co-founders of Rainforest – A service that does simple, beautiful QA. We sit down with the Rainforest crew and ask them three questions our Members want to know.
Why build Rainforest? (Kyle Wild – Keen IO)
To scratch our own itch! After we switched to Continuous Deployment we tried all of the established products and tools. The premise of CD was so awesome to us. But it felt like the sacrifice to get great front-end coverage was not worth it. So we decided to build a better way, that would fit into our workflow. We’re inspired by companies like Github and Heroku who have approached these kind of workflow problems from a design perspective, trying to make something that was tedious and universally hated actually beautiful as well as easy. – Fred
Why is it better than Selenium or doing it yourself? (Daniel Woelfel – CircleCI)
So the first thing to say is there are plenty of cases where Selenium – or some other form of automated front end testing – makes sense. However, in our experience Selenium is not the panacea that some teams hope for. The core cost with Selenium is that writing and maintaining test cases is done in code. This makes Selenium a huge source of technical debt. And no one on your team really wants to spend time writing Selenium code. They want to be shipping features. So our philosophy is remove that crap so they can focus on what matters. And we do that is by making test creation and maintenance as easy as speaking to someone, because that’s essentially what you’re doing. – Russell
What does Rainforest workflow/deployment look like? (Stephen Nguyen – Iron.io)
We have iterated on our workflow a lot, and we’re really happy with where we are right now. It’s a great balance between extensive test coverage and low friction for our devs. We do Git-based Pull Request code reviews. We run all our unit tests through our buddies at CircleCI, on every commit on every branch. We then run our Rainforest suite through Circle on every Develop commit. Develop is automatically pushed to our staging environment by Circle. And then to release to production we make a release pull request, and we run our Rainforest suite in a blocking way (which is just a flag on our CLI) so that the deploy only goes live if everything comes back green. – Fred