Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
By, Eduardo Gutierrez Capybara has allowed us to build complex and ambitious applications with the confidence that everything comes together in the user experience we're targeting. As the capabilities of the web have grown, interactions and behavior in our applications have become more complex and harder to test. Our tests become coupled to CSS selectors, fail intermittently, take longer and our confidence dwindles. In this talk, I'll go over best practices for working with a large Capybara test suite and dig into APIs and options we can use to handle complex apps such as a chat app not written in Ruby.
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 this presentation titled 'Ambitious Capybara', Eduardo Gutierrez discusses best practices for leveraging Capybara for testing in complex applications. The focus is primarily on enhancing the confidence of developers in writing effective integration tests, particularly for JavaScript-heavy applications. Gutierrez begins with a personal narrative about the journey of preparing the talk, thanking supportive communities and highlighting the importance of sharing experiences in the developer community. He expresses his affection for Capybara, despite common frustrations developers face with integration tests, such as frequent failures and difficulties in maintaining them. Key points discussed include: - **Readability and Maintainability**: Gutierrez emphasizes the significance of writing readable and maintainable feature tests that can act as documentation for stakeholders. He argues that tests should resemble user stories to enhance clarity. - **Avoiding Raw Selectors**: The speaker advises against using raw CSS selectors, which can complicate test maintenance. Instead, he advocates for using semantic HTML and reliable selectors, such as data attributes or titles, to improve readability and reduce coupling between styling and testing. - **Accessibility**: He highlights the importance of making tests accessible, advocating the inclusion of labels for inputs even if they are visually hidden, ensuring compatibility with screen readers. - **Performance Optimization**: To improve test performance, he recommends using the `within` helper to scope DOM searches, thus speeding up execution. - **Comprehensive Feature Specs**: Rather than creating isolated tests, Gutierrez encourages a QA script approach, which evaluates various functionalities holistically. - **Multi-Application Testing**: Capybara's ability to handle multiple applications in one session is showcased, particularly useful for scenarios involving integrated application testing. Gutierrez concludes by sharing best practices drawn from his experiences, expressing hope that developers will feel empowered to apply these insights to enhance their testing strategies. His final message encourages developers to reconsider their use of Capybara, emphasizing its utility for ambitious web applications and the importance of community feedback in raising confidence in testing methodologies.
Suggest modifications
Cancel