Here is Another Excuse Why ATDD Should Not Die Yet đź‘˝
Acceptance tests are critical in an agile environment because they answer the questions, “How do I know when I am done?” for developers and “Did I get what I wanted?” for users.
Hello World 🙂 This is going to be my first Medium Article which excites me so much. I will be totally honest with you. We all know that it is not easy to complete your acceptance tests which literally will make your product accepted by “a real user”. In light of “communication” which is core of this world, writing down all of the connextra, combining them, gathering your team and make a review on your trello cards that keeps your stories and data tables, fighting for your acceptance criterias meanwhile capable of staying open minded for the feedbacks from developers, et cetera. In my opinion, being a Search & Listing Product Owner at Modanisa, we have got to do all the above mentioned requirements in order to create an Iron Dome for your code and development.
Two weeks before the production, you know we all take some rain checks sometimes, our beautifully designed search bar needs some tiny improvement which is simple but meaningful at the same time, full-text-search !! Time is on the top. You already know what to do and you are in the mood of “we already know what to do as a team and how can we write an acceptance criterias for the full-text-search ??”. There was still something missing. Just because confidence comes with safety, when you travel on the ATDD aka Acceptance Test Driven Development, plane for a longer period of time, then you never want to fly with somethingElse AirLines. So we decided to finish the acceptance test right after the development instead of this rare condition.
A week later, we are done with that smart and small feature. Afterwards we were like “do not break the circle and let’s complete this acceptance criterias and tests immediately” right after the production so we did it however there was something wrong with passing the tests.
Good thing is we decided to write them down even if we do not have time for it.
When it comes to “Then I should see that <searchedKeyword> is in the double quote” line, then we realized that full-text search result title and description field is totally empty on the mobileWeb side so the Puppeteer kept warning us with a bunch of fail alarms and the test was stuck. Due to the running tests, another major defect is simply discovered by our developers.
Though creating story cards namely applying gherkin syntax for infrastructure tasks is pretty skeptical, this might be another topic for later.
Conclusion: It is understood that skipping acceptance criterias and tests is not a good idea and can not be an exception according to our experience.
Hope to see you soon.