Hi all! It's pie-mail time again!
It's an exciting couple of weeks coming up.
TestBash Home is this Friday (NZT) and it's ramping up to be amazing! I'll be hosting from about 3:30pm NZT so come and join me!
Then the following week Wednesday I'll be sharing at Product Talks - an ode to Product Managers. I'm lucky to be sharing the stage with some distinguished individuals, including Chanel Clark, Alister Coyne, Darragh McCarthy, and Diana Xavier. Join in the fun, in person or online!
Until then, here's an email to keep you entertained and informed!
🎓 This week I learned... 🎓
...about new features in Cypress*!
I attended Front End Test Fest this week. I had to get up at 4am to watch the start, but fortunately, the early talks were some of the best of the day.
One of these talks was by Amir Rustamzadeh, an introduction to a couple of new features in Cypress.
The first was component testing within Cypress.
Component testing is when you test a front end component completely independently of anything else. Tools like Storybook are really good for this, but there's something really appealing about being able to have everything in Cypress. Read all about it! (it's currently in alpha, but I'm pretty keen to try it out)
The other interesting thing was how Cypress Dashboard deals with flaky tests. A flaky test, if you're not familiar with the term, is an automated check that isn't reliable - it passes sometimes, but also fails sometimes without changing any underlying code.
The Cypress Dashboard (paid feature) has a whole feature dedicated to flaky test management - tests get retried a few times, and if successive runs past, the tests are flagged as 'flaky'.
They're also introducing a new feature called 'Burn In' that will run a new test multiple times to see how 'flaky' it is. It almost feels like they're encouraging or enabling the addition of flaky tests.
I'm fascinated by the approach, because I normally take a hard line on flaky tests - delete them, or disable them until they're fixed. I think flaky tests are bad, because they erode confidence in the test suite - and people start ignoring them.
However, Cypress' approach to flaky tests might work too, if it's reporting in a sensible manner? I'm curious to your thoughts or opinions on this!
*this newsletter isn't sponsored by Cypress or anything, but if anyone from Cypress is reading, like, it could be, ya know? Call me.
✨ Some interesting links ✨
Taking a year away from tech:
This was a nice refreshing read from one of my former colleagues, Georgia, about her experiences taking a year 'off', and getting back in to tech afterwards.
Testing in 2021 by Tim Bray:
Tim Bray gives some pretty well considered thoughts on testing. There's a lot to unpack in this one, but it's a great read, especially the section on legacy code.
Doom still has a fond place in my heart as one of the first PC games I played. Check out this breakdown of a super rare bug in Doom - the explanation is quite interesting!
Impossible to fix bugs:
This is a great article from Julia Evans about when bugs feel impossible to fix. If nothing else, it's nice to know I'm not alone in having experienced some of these!
JSONmatic is a tool that converts CSV to JSON and JSON to CSV and I love it.
🧩 Puzzle time 🧩
Here's a problem I saw this week.
In this example, there is a customer_company_mappings table - it maps a company_id to a customer_id.
One customer should be mapped to exactly one company.
But, there is a small chance a customer could be mapped to more than one company, and we want to throw an error if that happens.
Here is the code. Can you spot the bug?
Thanks Mitch for the suggestion for this one!
🎪 Events coming up 🎪
Events for those of you in New Zealand:
Design of the startup (16 June, Auckland)
This session on design for startups from the Designers Institute should be really interesting - featuring Jasmine Wilkinson and Josh Robb from Tend, Sonya Williams from Sharesies, and more great speakers, this promises to be an excellent evening.
Career advancement, and side projects (16 June, Auckland)
Junior Dev Auckland are hosting Pete Goodman and Hamish Stobo. Pete is going to be talking about advancing your career in tech, and Hamish will be sharing lessons learned from side projects. Great learnings to be had!
What do test leaders look for when hiring? (29 June, Auckland)
Ministry of Testing are hosting Zafraan Ameer, Pramod Bommisetty, and Ivan Stojkovic to answer your questions about what managers are looking for when hiring.
I'm really interested to hear this one (and see if I agree or not, heh heh)
Events for anyone anywhere!
Bas Dijkstra on Contract Testing (22 June)
Bas Dijkstra is one of the best speakers on automation that I've seen. Don't miss his talk at Test Automation Talks on Contract Testing.
Testing Voices (29 June)
EuroSTAR are hosting a free online community event for anyone passionate about quality. Looks like there's some great speakers and content!
Scale Test Automation With Your Developers In Mind (29 June)
Modern Test Automation Group are hosting Erika Chestnut, Dr. Nicole Forsgren, Lisa Crispin and Oren Rubin to talk about scalable automation solutions. Yet another event this month featuring amazing speakers and content creators - there's so much happening!
👋 Thanks for reading! 👋
Okay! Heaps happening huh, I really hope to cross paths with each of you at some of the events I've mentioned in this edition!
James a.k.a. JPie 🥧