Testing Lab Exercises (BBT)

Black Box Test Plan

Black Box Test Plan

Black Box Test Plan Starter File

For the Black Box Test plan, you will be using this starter file.

Setting up the Google Document

  1. Open file
  2. File > Make a copy
  3. Share (edit permissions) with teammate/s

Writing Black Box Tests

Create at least 10 black-box test cases (in addition to the two you were given) for the Somewhat More Simplified Solitaire software.1 Your test cases must be non-redundant, repeatable, and specific! Non-redundant means that each test case should correspond to a unique error condition or a unique combination of valid inputs. Remember to test against the requirements, incorporate equivalence classes, and incorporate boundary testing. Beneath your Test ID, indicate which strategy you used when developing the test case (R for requirements, EC for equivalence classes, BV for boundary testing).

For the black box test plan, you should not look at the code.2 Instead your tests should only be based on the requirements given.

Hints for Writing Black Box Tests

  • Remember that for each test, you will have to go through the full algorithm for each letter.
  • Use the Notes section of the google document or your README.md to write out each step of the algorithm (similar to HELLO example in Dr. Schmidt’s lecture slides and on the algorithm description). This will allow to look back at the steps if you find a mistake in your application of the algorithm.
  • If you create a Encrypt test case, you can easily write the Decrypt test case without going through the algorithm again. See the two test cases that were given.
  • To come up with test cases, look through the algorithm and consider equivalence classes and boundary values (e.g., placement of jokers).
  • You want your message to be multiple letters long so that you test going through the algorithm multiple times in a row, but for your sanity, you likely do not want long messages.

Footnote

  1. For the 10 black-box test cases for this exercise, the expected output should be the encrypted or decrypted message, not an error. 

  2. We are intentionally providing you with a compiled version of the program so that you do not look at the code.