Independent Task: Write and Update System Test Plan
Test Driven Development (TDD) means that tests are written before code is written. For system level tests, that means they are written as soon as the requirements are finalized. You will use the WolfScheduler Requirements to write additional test cases for the conflict functionality. Additionally, you will update any test cases that are no longer appropriate once the conflict functionality is added.
Learning Outcomes
- Write and update system tests
Create GP3 System Test Plan Document
If you don’t already have a project_docs
folder in your WolfScheduler
project, create it by right clicking on WolfScheduler
and selecting New > Folder.
You’ll start with a copy of the Guided Project 2 System Test Plan that has been updated with instructions for Guided Project 3.
- Download the document as a Word document by selecting File > Download > Microsoft Word in Google Drive.
- Save your system test plan as a Word document (
*.doc
or*.docx
) - Put the system test plan in the
WolfScheduler
project_docs
folder. - Add the system test plan to the index of the repo and commit/push.
Add and Modify Tests
Read the WolfScheduler
requirements. Guided Project 3 will focus the [Schedule Conflict] subflows of Use Cases 2 & 4 around time. The remaining requirements were implemented in Guided Projects 1 and 2.
- Use Case 1: Load Course Catalog
- Use Case 2: Rename Schedule
- Use Case 3: View Course Information
- Use Case 4: Add Course to Schedule
- Use Case 5: Remove Course from Schedule
- Use Case 6: Add Event to Schedule
- Use Case 7: Remove Event from Schedule
- Use Case 8: Reset Schedule
- Use Case 9: Display Final Schedule
- Use Case 10: Export Schedule
With the new time conflict functionality, there are tests in the system test plan that were fine for Guided Project 2, but that no longer meet the requirements. These tests must be revised to meet the full WolfScheduler
requirements.
Do the following tasks to update your system test plan:
- Identify any tests that will fail with the conflict requirement fully implemented. Revise or rewrite the test(s). You MAY NOT remove them!
- Write 5 additional tests that consider different conflict scenarios.
Additional instructions about the expectations for updating the system test plan for the WolfScheduler
project are IN the System Test Plan document. Please follow those instructions (especially highlighting new or modifed tests) to help with grading and earning full credit for your work.
Reference: Staging and Pushing to GitHub
GitHub Resources:
Check Your Progress
Complete the following tasks before pushing your work to GitHub.
- Make sure that all fields, methods, and constructors are commented.
- Resolve all static analysis notifications.
- Fix test failures.
- Commit and push your code changes with a meaningful commit message. Label your commit with “[Test]” for future you!