Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
by: Elisabeth Hendrickson Modern acceptance testing frameworks like Cucumber express tests in natural language, enabling organizations to establish their own Domain Specific Languages (DSLs). This powerful capability is a huge boon for communication: technical team members and non-technical business stakeholders can use the same vocabulary in expressing both requirements and tests. However, just creating a DSL does not ensure we will write good, clear tests. Indeed, it is all too easy to create acceptance tests that contain so many extraneous details that the real intentions behind the tests are obfuscated. In this session, Elisabeth will demonstrate how to edit technically correct but verbose Cucumber tests to increase clarity, reduce extraneous distracting details, and improve maintainability. Along the way we'll see how paying attention to the advice in Elements of Style applies to writing better automated acceptance tests. Strunk and White would be proud. Help us caption & translate this video! http://amara.org/v/GZSp/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In her presentation at GoGaRuCo 2010, Elisabeth Hendrickson addresses the importance of writing clear acceptance tests using modern frameworks like Cucumber. The main theme revolves around enhancing communication between technical and non-technical stakeholders by employing Domain Specific Languages (DSLs). While Cucumber allows for natural language tests, Hendrickson emphasizes that a well-defined DSL is only the beginning; clarity and conciseness in test writing are crucial. **Key Points Discussed:** - **Introduction to Acceptance Testing:** - An anecdote about her first conference presentation highlights the importance of clarity in communication. - The session focuses on the importance of treating acceptance tests with the same care as source code. - **Communicating Clearly:** - Acceptance tests should reflect clear communication using a common language understood by all team members. - The principles from 'The Elements of Style' by Strunk and White are paralleled in writing acceptance tests. - **Clarity in Tests:** - Cucumber tests often become verbose, leading to obfuscated intentions. A simple example illustrates how to refactor Cucumber tests for clarity by focusing on core intent rather than UI details. - The importance of omitting unnecessary words to maintain the essence of what needs testing is stressed significantly. - **Refining Acceptance Tests:** - Emphasizes structuring tests with a single topic per test scenario, advocating for organized tests. - Explaining that acceptance tests should serve as executable documentation to ensure shared understanding among all parties involved. - **Maintaining Clarity and Expressiveness:** - Cautions against the disconnect that can arise when developers rely too heavily on technical jargon, urging a focus on using clear language. - Highlights the significance of balancing expressiveness and brevity in testing language to enhance both clarity and usability. **Conclusions and Takeaways:** - Acceptance tests are a vital tool for alignment on customer expectations. - Clear and concise acceptance tests improve communication across teams, ensuring everyone understands functionalities being developed. - The goal is to create acceptance tests that not only validate features but also enhance collaboration and customer understanding. Hendrickson concludes by encouraging an ongoing dialogue about improving practices surrounding acceptance tests, reiterating their value in delivering functional software and meeting customer needs.
Suggest modifications
Cancel