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

Acceptance Brainstorming

Chris McAvoy edited this page Nov 6, 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 some@email.org
    And I have a Backpack account as some@email.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

  Scenario: Reject sending an earned badge
    Given I have earned a badge as some@email.org
    And I have a Backpack account as some@email.org
    When I click the **Add to Backpack** button
    And log in to my Backpack
    And reject the earned badge
    Then I should not see that badge in my Backpack

  # ### Error scenarios ###
   Scenario: Earned a badge, already have that badge in my Backpack
    Given I have earned a badge as school@email.org
    And I have a Backpack account as school@email.org
    And I already have that badge in my Backpack
    When I click the **Add to Backpack** button
    And I log in to my Backpack
    Then I should see a notice that I already have that badge in my Backpack
  
  Scenario: Earned a badge, has a different Backpack
    Given I have earned a badge as school@email.org
    And I have a Backpack account as personal@email.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 some@email.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 school@email.org
    And I have a Backpack account as personal@email.org
    And my Backpack account has school@email.org as an alternate email
    When I click the **Add to Backpack** button
    And I log in to my Backpack as personal@email.org
    Then I should see my badge in my Backpack

I can also think of scenarios from the issuer's perspective for the same Send to Backpack feature, but the description was written from a user's standpoint. Where do I put the issuer-centric ones? Do I just expand the description to talk about both?

Feature: Send to Backpack feedback
  In order to understand what my users are doing with their badges,
  As a badge issuer,
  I want the Send to Backpack feature to include feedback to my site.

  Scenario: User sends their badge
    Given a user has earned a badge on my site
    When they send their badge to their Backpack
    Then I should be told they have accepted it

  Scenario: User rejects the badge
    Given a user has earned a badge on my site
    When they reject sending the badge to their Backpack
    Then I should be told they have rejected it

  Scenario: Badge is invalid
    Given a user has earned a badge on my site
    And I have formatted that badge incorrectly
    When they click the **Add to Backpack** button
    Then I should be notified of the formatting error
Clone this wiki locally