Talks
Speakers
Events
Topics
Search
Sign in
Search
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
search talks for
⏎
Suggest modification to this talk
Title
Description
Cucumbers Have Layers: A Love Story Sam Livingston-Gray Cucumber sucks. Features are hard to write and constantly break when the UI changes. Step definitions are annoying to create and a freaking nightmare to maintain. And Cucumber suites take for-EVER to run, because you have to wait for a web browser. Except... [almost] none of that is actually true. After years of making awful messes with Cucumber, I finally found a way to use it that worked well, and a project I couldn't have done without it. I'd like to show you one way to use Cucumber that can be elegant, powerful, expressive, and—believe it or not—fast. Help us caption & translate this video! http://amara.org/v/H12G/
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 the talk 'Cucumbers Have Layers: A Love Story' at RubyConf 2015, Sam Livingston-Gray presents a new perspective on using Cucumber, a tool for behavior-driven development, primarily through the Gherkin language. This presentation is designed for individuals who have previously used Cucumber but may have unresolved issues with it, and offers insights into how to utilize Cucumber effectively. **Key Points:** - **Introduction to Gherkin and Cucumber:** - Gherkin is a domain-specific language (DSL) that allows users to describe software features in a human-readable format. Gherkin files contain scenarios that consist of steps defined in natural language, facilitating both documentation and automation. - Cucumber processes these Gherkin files to automate testing, helping in bridging communication between developers and non-technical stakeholders. - **Cucumber's Role in Testing Workflows:** - Livingston-Gray advocates for using Cucumber as a guide rail around test-driven development (TDD). He explains that starting with Cucumber scenarios aids in focusing on what to do rather than getting lost in implementation details. - A workflow is presented where failing Cucumber tests lead to necessary adaptations in unit tests, promoting an iterative development process. - **Common Mistakes with Cucumber:** - He shares personal anecdotes regarding common pitfalls, such as excessive reliance on Cucumber for regression tests, lengthy test suites that dilute effectiveness, and cluttering scenarios with implementation details rather than focusing on user intent. - The talk emphasizes the importance of keeping Gherkin focused on describing the domain rather than the user interface. - **Real-World Application Example:** - He describes a complex project involving sales commission calculations where Gherkin was used to document and clarify business rules, facilitating better communication between developers and the sales department. This project highlighted the value of proper Gherkin documentation. - **Gherkin as a Communication Tool:** - Livingston-Gray stresses that Gherkin can foster discussions among team members, serving as a collaboration tool rather than merely a test automation framework. - Emphasizes the importance of using clear and contextual language in Gherkin files to support understanding across different stakeholders. **Conclusions:** - Gherkin and Cucumber can be powerful tools when utilized correctly. Developers are encouraged to focus on crafting meaningful feature files that capture user intent, while maintaining simplicity in step definitions to prevent complex and fragile tests. The talk advocates giving Cucumber another chance, urging developers to rethink their approach and usage in behavior-driven development contexts.
Suggest modifications
Cancel