Homework Assignment #4 — Unit Testing

In this assignment, students will practice mutiple aspects involved in unit testing, including (1) how to think through test cases for a given application and (2) how to implement unit test cases for a given program/project.

NOTE: this homework webpage will give you a high-level introduction of HW4. Detailed HW4 instructions will be given through this GitHub link where you can find all the related code repositories for HW4: https://github.com/largehappygroup/HW4-general

Important logistics for HW4:

This homework is based on Java JUnit 5. You are encouraged to work on it in Eclipse for Java (the version does not matter). If you don't have Eclipse on your computer, you can download a version from the official website (you can also just Google "eclipse download"): https://www.eclipse.org/downloads/packages/ . The regular Eclipse IDE for Java Developers will suffice. Please choose the one that is suitable for your own computer (x86 or Arm64). It is fine if you choose a different IDE.

IMPORTANT: Recommened Work Flow for HW4

  1. Read through this webpage to have a high-level idea about HW4.
  2. Make sure you have Eclipse installed on your computer.
  3. Go to the GitHub repository.
  4. Scan through the instructions in the GitHub repo first to have an idea about what you will see and what you will submit in HW4.
  5. After you finish both tasks, make sure you submitted all files to the Box.

Grading

Since HW4 is purposed to practice unit testing, we will be generous on grading for HW4: We expect the majority of students to provide decent unit test cases. We will only give penalty when "absolute low quality" happens. For example, while the majority of students can provide at least N test cases, you put down way less test case or something that is irrelavent to the homework, then we will cut off your points accordingly. Otherwise we prefer giving full credits to our students.