Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arm-university/educheck
EduCheck is an auto grading tool for educational coding exercises
https://github.com/arm-university/educheck
arm codegrader education tooling tools
Last synced: 2 months ago
JSON representation
EduCheck is an auto grading tool for educational coding exercises
- Host: GitHub
- URL: https://github.com/arm-university/educheck
- Owner: arm-university
- Created: 2022-11-30T15:27:54.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-07-26T08:29:36.000Z (7 months ago)
- Last Synced: 2024-07-26T09:50:31.999Z (7 months ago)
- Topics: arm, codegrader, education, tooling, tools
- Language: C++
- Homepage:
- Size: 956 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE/License.md
Awesome Lists containing this project
README
# EduCheck code grading tool
Welcome to the EduCheck code grading tool.
### [Download the tool here](https://github.com/arm-university/EduCheck/archive/refs/heads/main.zip)EduCheck is an auto grading tool for coding exercises in the [Rapid Embedded Education Kit](https://github.com/arm-university/Rapid-Embedded-Education-Kit). It does the following:
- Grades code functionality in the lab exercises supplied with the Rapid Embedded Arm Education Kit.
- Leverages Arm Mbed OS and Mbed Greentea to perform functional testing on submitted code, i.e., checks if the students' code will produce the expected outputs and runs the test on a physical Mbed-enabled board.
- Assumes that an incomplete skeleton code will be provided to the students who will fill in the blanks or build their code upon it.
- Does not assess code quality or plagiarism in submissions at the moment.
- Provides an HTML report for student code grades, for example:
## Getting Involved
We welcome contributions, amendments & modifications to this tool. For details, please click on the following links:* [How to contribute](https://github.com/arm-university/EduCheck/blob/main/Contributions_and_Modifications/Contributions_and_Modifications.md)
* [Type of modifications](https://github.com/arm-university/EduCheck/blob/main/Contributions_and_Modifications/Desired_Contributions.md) we are looking for. We also use [Projects](https://github.com/arm-university/EduCheck/projects) to track progress.
* [Workflow](https://github.com/arm-university/EduCheck/blob/main/Contributions_and_Modifications/workflow.pdf)# Requirements
## Hardware requirements:
EduCheck requires the following hardware:
- An Arm Mbed-enabled board.**Note: EduCheck currently will not work if you do not connect a Mbed-enabled board while running EduCheck. However you will not need any lab peripherals connected to the board itself.**
The following boards were tested with EduCheck:
- STMF746G-DISCO
- NUCLEO-F401RE
- NUCLEO-F091RC
- LPC-1768## Software requirements
The EduCheck tool was tested in the following environment:
- Windows OS 10 (not WSL)
- mbed-cli 1.10.5 (Mbed Command Line Interface package)
- Mbed OS 6.5
- Mbed-Greentea 1.8.3
- Python 3.7.9
- pip 21.0.1
- Git 2.16.2.windows.1
- Mercurial 5.6.1
- GNU Compiler: GNU Arm Embedded Toolchain
(9_2020_q2_update)**Note: See the [`Getting_Started.md`](codegrader/docs/Getting_Started.md) documentation for installation information.**
# Getting started
See the [`Getting_Started.md`](codegrader/docs/Getting_Started.md) documentation for installation information and how to
run EduCheck.# Expected directory structure
**You must put unique student folders containing the code to be tested in the STUDENT_HOMEWORK folder. Each unique student folder should not have nested folders. A working example would be: *STUDENT_HOMEWORK/student1/mp3player.cpp*.** The EduCheck tool expects the following directory structure.
```
.
└── educheck
├── codegrader
│ ├── README.md
│ ├── docs/ // Documentation Folder
│ ├── STUDENT_HOMEWORK/ // Place unique student folders in here
│ │ ├── student1
│ │ │ └── mp3player.cpp
│ │ ├── student2
│ │ ├── student3
│ │ ├── student4
│ │ ├── student5
│ │ └── test.cpp // Educheck skips this test.cpp as it is
| | not a unique folder
| |
│ ├── codechecker/ // Educheck Source Code Package
│ └── mbed_files/ // Educheck pulls & builds Mbed OS in here
├── install.bat // Installation file for Educheck
```See the [`Getting_Started.md`](codegrader/docs/Getting_Started.md) for more information.
# Known issues:
Please read the [`Troubleshooting_Guide.md`](codegrader/docs/Troubleshooting_Guide.md) for more information.## License
You are free to amend, modify, fork or clone this material. See [License.md](https://github.com/arm-university/EduCheck/blob/main/LICENSE/License.md) for the complete license.## Inclusive Language Commitment
Arm is committed to making the language we use inclusive, meaningful, and respectful. Our goal is to remove and replace non-inclusive language from our vocabulary to reflect our values and represent our global ecosystem.
Arm is working actively with our partners, standards bodies, and the wider ecosystem to adopt a consistent approach to the use of inclusive language and to eradicate and replace offensive terms. We recognise that this will take time. This course contains references to non-inclusive language; it will be updated with newer terms as those terms are agreed and ratified with the wider community.
Contact us at [email protected] with questions or comments about this tool. You can also report non-inclusive and offensive terminology usage in Arm content at [email protected].