CSC 217 Lab 11 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 functionality 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 faculty functionality shouldn’t lead to the regression of any existing tests. If so, update the test to reflect the new requirements.
PackSchedulerGUI
The teaching staff has provided six classes that comprise the GUI for PackScheduler
. Create classes PackSchedulerGUI
, InstructorAssignmentPanel
, CourseCatalogPanel
, StudentDirectoryPanel
, FacultyDirectoryPanel
, and StudentRegistrationPanel
in the edu.ncsu.csc216.pack_scheduler.ui
package and copy in the provided code. The InstructorAssignmentPanel
class is new and PackSchedulerGUI
has updates.
PackSchedulerGUI
CodeInstructorAssignmentPanel.java
CodeCourseCatalogPanel
CodeStudentDirectoryPanel
CodeFacultyDirectoryPanel
CodeStudentRegistrationPanel
Code
System Testing and Debugging
System test the new FacultySchedule functionality to ensure it works correctly.
The following files are needed for testing. Note that there is a new file faculty_records_extended.txt
that has faculty records for the instructor ids used in course_records.txt
!
- faculty_records_extended.txt
- student_records.txt
- course_records.txt
- expected_course_catalog.txt
- expected_course_records.txt
- starter_course_records.txt
- t19_student_directory.txt
- t39_course_catalog.txt
- faculty_records.txt
- expected_faculty_records.txt
- invalid_faculty_records.txt
- expected_full_faculty_records.txt
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:
Check Jenkins
At this point your project will build on Jenkins, maybe even with a green ball! If you have test failures, use the feedback from Jenkins to help you resolve the issues.
Reminder: Interpreting Jenkins
Check the following items on Jenkins for your last build and use the results to estimate your grade: