How the Skill Tests Work
Table of contents
Skill tests are our best opportunity to check that you understand the material. Completing them will be very similar to completing homeworks, except that it will be done live, with a proctor. You can complete a practice skill test here.
How the Skill Test Will Be Proctored
- You will complete the required functions in a
.pyfile, live on Zoom with your camera on. - You will upload your
.pyfile to Gradescope. - You will meet immediately afterwards with a proctor to demonstrate your understanding of your code.
Note: If you lose any points in Gradescope auto-scoring, we’ll manually review to see if you should get partial credit (using the rubric below).
Scoring Rubric
1. Correctness and Functionality (60%)
| Score | Description |
|---|---|
| 10 pts | The code runs without errors and meets all the given requirements. All test cases pass successfully. |
| 8–9 pts | The code runs with minor errors or issues that do not significantly affect the functionality. Most of the test cases pass. |
| 6–7 pts | The code runs with moderate errors or issues that affect the intended functionality. Some of the test cases pass. |
| 3–5 pts | The code runs but has major errors or issues. Very few test cases pass. |
| 0–2 pts | The code does not run or does not meet the requirements in any significant way. None of the test cases pass. |
2. Style (10%)
| Criterion | Points |
|---|---|
| No illegal imports | 1 pt |
| Module docstring (name & PID) | 1 pt |
| Function docstrings | 1 pt |
| 3+ doctests per function | 2 pts |
| Lines ≤ 79 chars | 1 pt |
| 4-space indentation (no tabs) | 1 pt |
| No magic numbers | 1.5 pts |
| Descriptive snake_case names | 1.5 pts |
3. Understanding of Your Code (30%)
For each question, you can demonstrate to the proctor that you understand the code you submitted. If you have written the code yourself (without assistance from AI), it will be very easy to get full credit for this section.