germsvel
Hi there,
I’ve been working on a Test-Driven Development with Phoenix book. It teaches TDD and BDD by building a chat app from the outside-in. It’s still a work in progress, but the overall TDD process is clear, and the application that we build throughout the book is fully functional. So, I believe people can already benefit from it.
The book is freely available online at tddphoenix.com.
If you’re interested in the process of writing it, I talked some about it in episode 18 of the Thinking Elixir podcast
I hope some find it helpful.
Trending in Books
Other Trending Topics
Hey there,
I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first.
...
New
Hi everyone :waving_hand:
I wanted to share something I’ve been building — NowBlind, a random chat app designed to help people discover ...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #code-sync
- #discussion
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #blog-post
- #elixirconf-us
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #hex











Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
imartinat
It seems awesome. Thanks for this great free book.
imartinat
I really like your book and the explanations. The first time I tried to use Wallaby, I had an error "
Wallaby can’t find phantomjs" . So I installed chromedriver and I setup Wallaby using chromedriver. It might be good to update your book to setup Wallaby with phantomjs or chromedriver. Thanks again for your book.
joelwallis
This is awesome! I’m learning Phoenix and I currently struggle to put TDD into practice.
I’ll definitely be reading your book. Thank you!
germsvel
Thanks! I definitely need to add a little note about that at the beginning. It’ll be there when I push the next set of changes.
idlehands
Fantastic! I will try to take a look soon and then share it out as a resource. Thank you!
Qqwy
Thank you very much for creating this!
Very nice
The one piece of feedback I would like to share after reading through it (some sections thoroughly, some sections skimmingly) is that you do not mention property-based testing. Even if only as a footnote, mentioning it might help people to discover it as one more cool tool for their testing toolbox.
mstibbard
I can’t seem to get this working at all… Even with chromedriver and phantomjs installed.
imartinat
I am on a mac, I installed Chromedriver and moved it to /usr/local/bin (or you need to add it to your PATH).
And in config.exs, I added
mstibbard
Thanks, adding that to config/test.exs & chromedriver to PATH changed the error message at least!!
germsvel
What version of Wallaby are you using?
In version 0.25 and newer, Chrome stopped being experimental, so the config changes to
If that doesn’t fix the issue, make sure you include the following in your
test/test_helper.exs:That your
config/test.exsfile hasserver: trueand thesql_sandboxflag:And then use that flag in your endpoint:
Hopefully, just one of those steps is missing. Wallaby’s setup docs are pretty good. So check them out if you still have problems.