Skip to content
This repository has been archived by the owner on Aug 22, 2019. It is now read-only.

Acceptance Brainstorming

Mike Larsson edited this page Aug 5, 2013 · 17 revisions

Just throwing out some ideas for potential Backpack acceptance tests as a straw man:

# Does this need to cover the single-site earner too?
Feature: Send to Backpack
  In order to export my badges to a common place where I can do interesting things with them,
  As a badge earner on multiple different sites,
  I want those sites to offer me a Send to Backpack option.

  Scenario: Earned a badge and has a Backpack
    Given I have earned a badge as x@stenington.org
    And I have a Backpack account as x@stenington.org
    When I click the **Add to Backpack** button
    # Are the `And`s following useful to include?
    And log in to my Backpack
    And accept all conditions/prompts presented to me
    Then I should see my badge in my Backpack

  # ### Error scenarios ###
  Scenario: Earned a badge, has a different Backpack
    Given I have earned a badge as x@stenington.org
    And I have a Backpack account as y@stenington.org
    When I click the **Add to Backpack** button
    And I log in to my Backpack
    Then I should see a notice that my Backpack account and badge recipient don't match

  Scenario: Earned an invalid badge
    Given I have earned a badge as x@stenington.org
    But the issuer has not formatted it correctly 
    When I click the **Add to Backpack** button
    # Validity should be checked pre-login, I think
    Then I should see a notice that the badge is not acceptable because of an issuer error

  # An example of something we want but don't have
  Scenario: Earned a badge, has a linked account Backpack
    Given I have earned a badge as x@stenington.org
    And I have a Backpack account as y@stenington.org
    And my Backpack account has x@stenington.org as an alternate email
    When I click the **Add to Backpack** button
    And I log in to my Backpack as x@stenington.org
    Then I should see my badge in my Backpack
Clone this wiki locally