CSC 217 Lab 09 - Stacks and Queues

CSC 217 Lab 09 - Testing

CSC 217 Lab 09 Testing

As with any software development project, you must test your code to know if it meets the requirements and design. You should have unit tested your new code as you added course validation functionality. Now you will ensure sufficient coverage and system test PackScheduler.

PackScheduler Coverage

Ensure that all non-UI classes have at least 80% statement coverage. Add any needed tests to cover at least 80% of the statements.

The introduction of the new course name validation functionality shouldn’t lead to the regression of any existing tests unless you specifically tested a string that earlier may have been invalid but is now valid. If so, update the test to reflect the new requirements.

PackSchedulerGUI

The teaching staff has provided four classes that comprise the GUI for PackScheduler. Create classes PackSchedulerGUI, CourseCatalogPanel, StudentDirectoryPanel, and StudentRegistrationPanel in the edu.ncsu.csc216.pack_scheduler.ui package and copy in the provided code.

System Testing and Debugging

Use your black box tests from previous labs as inspiration for system testing your Lab 9 waitlist functionality! There is no need to formally document your test, but you do need to run some to ensure that your waitlist functionality is integrated into PackScheduler correctly! (We will be testing the new functionality with our system tests. Run your own tests to increase your confidence in passing ours.)

The following files are needed for testing.

Push to GitHub

Push your PackScheduler project to GitHub.

  • Add the unstaged changes to the index.
  • Commit and push changes. Remember to use a meaningful commit message describing how you have changed the code.

Check Jenkins and make sure that you have a green ball and are passing your tests AND the teaching staff tests (both unit and system)!

Reminder: Staging and Pushing to GitHub

GitHub Resources: