SE-2832 Introduction to Software Verification

Dr. Mark Sebern -- Spring quarter 2013-2014

Lab 4

Revised: 2 April 2014


In this lab, you will work in a small team (2-3 members) to explore test equivalence class and boundary value testing strategies with TestNG. You may not do this lab by yourself.


  1. Download the sample code:
  2. Install the TestNG Eclipse plugin, using the Eclipse Install New Software... menu choice, from
  3. Design and implement TestNG tests for the "blood pressure diagnosis" function. Implement each of the following test strategies (perhaps with different test methods), so that you will be able to tell if there is any difference in the ability to find defects.
    • Using equivalence class test values
    • Using boundary value test values
  4. Identify defects, if any, in the software under test (SUT).
  5. Fix any defects that you found, and re-run the tests.
  6. Try to inject one or more defects that would be caught by one of your test sets (equivalence class or boundary value), but not by the other. Run your tests on the modified code and document the results in your report. If you are successful, leave these defects (documented) in the code you submit.
  7. Write a brief report describing your experience with this lab (see below).

Assignment submission (due by 11:59PM CDT, Tuesday, April 8)

Prepare a PDF report (named "SE2832-username1-username2-username3-Lab4.pdf", where each "usernameN" is the MSOE email username of a team member) on your lab experience, including:

One team member should email your team report to the instructor.