This two videos show how to do Behaviour Driven Development (BDD) with Ruby, Cucumber and RSpec.
Published August 19th, 2010 Under Uncategorized | Leave a Comment
FitNesse, BDD/ATDD based tools (like Cucumber) and various keywords based tools each have their followers when it comes to automated testing at the system or acceptance level. But few have tried each type and many are wondering which one best suits their organisation, project or product. The concept of Domain Specific Test Languages (DSTL) is a great improvement over record & playback based approaches to automated testing and promises easy to read & write tests in the language of the business and low maintenance effort. This interactive session first presents DSTLs and how they fit in an Agile process & team and then considers how each type of tool supports this effective approach to automated testing. The tools will be compared using one non-trivial test case, to illustrate some of their strengths and limitations
Ben Hall shows how Ruby testing tools can help with .NET and ASP.NET development and takes a look at RSpec, Webrat, Cucumber, Selenium and others. Also: a peek at using IronRuby for testing .NET apps.
Writing checks for your monitoring system is boring. You end up writing the same checks again and again, and it can be difficult to verify behavior instead of availability. Wouldn’t it be useful to have a standard library of checks you could reuse across your infrastructure? it lets you write reusable behavioral tests in human-readable language.Say hello to cucumber-nagios – it lets you write reusable behavioral tests in human-readable language. As cucumber-nagios output the test results in the Nagios plugin format you can run your checks from any monitoring system that understands the format, but as you start adding more machines to your monitoring system you’re going to notice slowdowns and reliability problems. Enter Flapjack, a scalable and distributed monitoring system. It natively talks the Nagios plugin format, and can easily be scaled from 1 server to 1000. Flapjack aims to be simple to set up, configure, and maintain, and easily scales from a single host to multiple. This presentation will be covering how to get up and running with both cucumber-nagios + Flapjack, writing tests for your web apps, and why it’s important to test the behavior (and not just the availability) of your production web apps.
Video produced by DevOpsDays
Pickle adds many convenient Cucumber steps for generating models. Also learn about table diffs in this episode. Cucumber lets software development teams describe how software should behave in plain text. The text is written in a business-readable domain-specific language and serves as documentation, automated tests and development-aid – all rolled into one format. Pickle gives you cucumber steps that create your models easily from factory-girl or machinist factories/blueprints
Cucumber is a tool that can execute plain-text functional descriptions as automated tests. The language that Cucumber understands is called Gherkin. While Cucumber can be thought of as a “testing” tool, the intent of the tool is to support BDD. This means that the “tests” (plain text feature descriptions with scenarios) are typically written before anything else and verified by business analysts, domain experts, etc. non technical stakeholders. The production code is then written outside-in, to make the stories pass. Cucumber itself is written in Ruby, but it can be used to “test” code written in Ruby or other languages including but not limited to Java, C# and Python. Cucumber only requires minimal use of Ruby programming and Ruby is easy, so don’t be afraid even if the code you’re developing in is not Ruby. Gojko will demonstrate how to use Cucumber for Java, .NET and Ruby applications, talk about new Cucumber features and best practices for writing and maintaining Cucumber scenarios.
This video provides an experience report on how we build quality software at uSwitch.com. Around 9 months ago the development team shifted from having a separate QA team to adopting a whole-team approach for building and delivering software with quality baked in. This talk explains why we made this shift, provide an insight into how we achieved it from a people and process point of view and delve into tooling. It includes:
- Why testing along the production line is better than testing end-of-cycle.
- How we make sure we get thorough acceptance criteria up front, before we start development.
- How we automate execution of acceptance criteria with cucumber and watir.
- How we run these continuously in TeamCity.
- Why we stopped using QTP and Selenium.
- How our developers learnt to think like testers.
- Why we stopped using the words ‘tester’ and ‘testing’.
- The importance of BDD for writing testable code.
- How kanban principles help radiate information on development and provide tracking and reporting on quality.
- Peripheral activities that help us continuously release quickly and confidently.
In this talk from FutureRuby, Joseph Wilk gives an introduction to the BDD framework Cucumber and gives valuable tips for getting it adopted and used by customers and developers. Cucumber lets software development teams describe how software should behave in plain text. The text is written in a business-readable domain-specific language and serves as documentation, automated tests and development-aid – all rolled into one format.
This is a demo of how I’d like to be able to do Behaviour-driven development (from the outside-in) on Ubuntu using stories and automated testing. The story-part is already possible with cucumber – but it’d be nice to be able to use Python right? And the automated testing would use the new notification system in Ubuntu Jaunty (in the way that growl + rspactor is used on the mac) – AFAICS this should be possible already, we just need easy configuration etc.
Cucumber is a BDD tool that aids in outside-in development by executing plain-text features/stories as automated acceptance tests. Written in conjunction with the stakeholder, these Cucumber “features” clearly articulate business value and also serve as a practical guide throughout the development process: by explicitly outlining the expected outcomes of various scenarios developers know both where to begin and when they are finished. This video presents the basic usage of Cucumber, primarily in the context of web applications, which will include a survey of the common tools used for in-memory and in-browser testing. Common questions and pitfalls that arise will also be discussed.keep looking »