// ... } public void testItDoesNotShowADeliveryForExpiredTrackingCode() { // ... } public void testItDoesNotShowADeliveryDeliveredMoreThanAMonthAgo() { // ... } } DeliveryController • it shows delivery details for a valid tracking code • it does not show a delivery for expired tracking code • it does not show a delivery delivered more than a month ago
a status of my delivery So I could know when it's going to be delivered Scenario: Clicking a tracking URL Scenario: Clicking a tracking URL month after delivery
a status of my delivery So I could know when it's going to be delivered Scenario: Clicking a tracking URL Given I am waiting for a delivery And I received a confirmation message When I click the tracking URL from the message Then I should see a status of my delivery Scenario: Clicking a tracking URL month after delivery Given I my package was delivered a month ago And I kept the confirmation message When I click the tracking URL from the message Then I should be informed the tracking URL has expired
a status of my delivery So I could know when it's going to be delivered Scenario: Clicking a tracking URL Given I am waiting for a delivery And I received a confirmation message When I click the tracking URL from the message Then I should see a status of my delivery Scenario: Clicking a tracking URL month after delivery Given I my package was delivered a month ago And I kept the confirmation message When I click the tracking URL from the message Then I should be informed the tracking URL has expired
courier services. We want to increase the number of satisfied customers." "Aha!" "So they wouldn't get impatient and file complaints when the delivery is delayed." "Why?" "So they could know when is it going to be delivered." "Why?"
the Customer if delivery is delayed Add expected delivery time to the confirmation message SMS notifications Add a tracking URL to the confirmation message E-mail notifications List of deliveries after signing in Prevent complaints Check delivery status Why? Who? How? What?