Front End Testing using Elixir

Contenxt:

My current company’s ecommerce website is on Drupal 7. I am trying to find a way (excuse) to use Elixir more in my workplace. In order to achieve this, I was thinking of creating a front end testing tool using Elixir.

My Question:

  1. Has anyone here created a front end testing tool using Elixir which tests a website on a re-occuring bases?
  2. Is this a good idea? Should I abandon Elixir for front end testing and stick to something like cypress?

Maybe relevant:

https://hexdocs.pm/hound/readme.html

I must try this kind of thing out sometime. :slightly_smiling_face:

This looks interesting.

There is Wallaby also… both Hound and Wallaby work well for automated E2E browser testing.

1 Like

Hound works very well for this. I am currently deploying hound against a django bff that runs in front of a django backend and it was incredibly effective at demonstrating that the elixir replacement backend that I wrote is an effective substitute that doesn’t die after long term burn in testing.

I can’t compare it to anything else (it’s been ages since I used capybara) but I wrote a repeating test and having it be a supervised process in elixir meant I didn’t have to nail down all corner cases (also my tests called out other services like ssh to confirm side effects), if it crashed the tests would restart from a safe state

I tried wallaby, but there were simply a few things that couldn’t trigger as reliably as hound does, so I stuck with hound, even though it’s imperative syntax is less to my liking. I got used to it though.

3 Likes

Thanks @tme_317 and @ityonemo for your insight. I’m going to take a look at both wallaby and hound. Ideally I would like go with the library that sees to build out.

We tried both out and ended up going with Wallaby. The experimental chrome driver has been working out great for us!

3 Likes