bene@theodo.co.uk
Ben Ellerby
Unit
Integration
End to End
DDD
Evans, E., 2004. Domain-driven design: tackling complexity in the heart of software. Addison-Wesley Professional.
Ubiquitous Language
DDD
BDD
"Behaviour is a more useful word than test"
https://dannorth.net/introducing-bdd/
"Requirements are behaviour, too"
BDD
BDD
BDD
Given some context When some action Then some result
BDD
Given the account has £10 When the customer requests £20 Then cash is not dispensed And an error message is displayed And the card is returned
BDD
Story: One line description As a ROLE In order to GOAL I want to BENEFIT
Cypress
Text
Cypress
Cypress
Cypress
Cypress
Cypress
describe('My First Test', function() {
it('Does not do much!', function() {
expect(true).to.equal(false)
})
})
Cypress
describe('My First Test', function() {
it('Does not do much!', function() {
expect(true).to.equal(false)
})
})
Cypress
www.cypress.io
Cypress
www.cypress.io
Cucumber
www.cucumber.io
Provides the DSL for writing scenarios with the Gherkin syntax
Helping to provide living documentation
Cypress + Cucumber
https://github.com/TheBrainFamily/cypress-cucumber-preprocessor
+
Cypress + Cucumber
import { Then } from "cypress-cucumber-preprocessor/steps";
Then(`I see {string} in the title`, title => {
cy.title().should("include", title);
});
https://github.com/TheBrainFamily/cypress-cucumber-example
Cypress + Cucumber
Backlog
Refinement
Tech Refinement
Review
Planning
Cypress + Cucumber
Kaizen
ben@ellerby.tech
https://www.linkedin.com/in/benjaminellerby/