Skip to main content

badass: (not so) bad assessments

badass helps to produce automated assessments of programming projects. It is likely to produce bad assessments of good projects, but good assessments of bad projects. Indeed, it can test:

  • if the project compiles
  • the return values of functions on defined test cases
  • static properties on the code
  • traces of the execution

But it cannot test:

  • code readability and clarity
  • algorithm relevance and quality
  • all such aspects one would like to test on good projects

So, bad projects are likely to fail on the first group of tests, while good project will pass and thus remain to be assessed manually.

The main goal of badass is thus to quickly produce superficial assessments for a large number of students, allowing to focus on the best projects for a manual analysis.

Security

badass will execute all foreign code inside a sandbox provided by firejail so you won't harm your system executing malicious or badly programmed projects.

Current state and future

This is a very early version:

  • limited to C projects
  • tests are provided as the main function
  • other tests have to be programmed by hand to analyse:
    • the source code
    • the strace log of the program

In the future versions, we may have:

  • online submission of projects and report to the students on a given set of tests
  • final assessment on extended test
  • copy/paste detection between projects
  • a library of standard tests on source code and strace logs

Licence

badass (C) 2020, Franck Pommereau franck.pommereau@univ-evry.fr

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Metadata

Release files for not-so-badass 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for not-so-badass 0.1
File Size Uploaded Provenance Actions
not-so-badass-0.1.tar.gz 189.4 kB Without provenance Details for not-so-badass-0.1.tar.gz

Release files / not-so-badass-0.1.tar.gz

Download URL not-so-badass-0.1.tar.gz
Size 189.4 kB
Tags Source
SHA-256 checksum
How to use checksums
637a9b763218d273d348b670eb9822d72ba40f63c6cfdf813450cf67c5acb845
BLAKE2b-256 checksum
How to use checksums
272bd5f605aa52b1396b585f7be5e042d6d560915d3ce7fddd8012cceb867839
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/2.0.0 pkginfo/1.5.0.1 requests/2.20.1 setuptools/41.0.1.post20191122 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.4

Security for not-so-badass 0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page