(并非如此)糟糕的评估
not-so-badass的Python项目详细描述
badass
:(不是)糟糕的评估
badass
有助于生成编程的自动化评估
项目。它很可能对好的项目产生不好的评价,
但对糟糕项目的良好评估。事实上,它可以测试:
- 如果项目编译
- 定义测试用例上函数的返回值
- 代码的静态属性
- 行刑痕迹
但它无法测试:
- 代码可读性和清晰度
- 算法相关性和质量
- 所有这些方面人们都想在好的项目上进行测试
因此,糟糕的项目很可能在第一组测试中失败,而 好的项目将通过,因此仍需人工评估。在
因此,badass
的主要目标是迅速产生表面的效果
针对大量学生的评估,允许将重点放在
手动分析的最佳项目。在
安全
badass
将在提供的沙盒中执行所有外来代码
这样你就不会伤害你的
系统执行恶意或编程错误的项目。在
现状与未来
这是一个非常早期的版本,仅限于C项目。 在未来的版本中,我们可能会:
- 在线提交项目并向学生报告给定的 测试集
- 源代码和
strace
日志的标准测试库 - 支持其他语言
安装
首先,只要pip install not-so-badass
。然后,试着跑
badass -h
,如果你得到帮助信息,一切都应该是
好 啊。在
故障排除libclang
问题
您可能对没有正确加载的libclang
有问题。
badass
尝试查找动态库,但可能失败。在
在这种情况下,应该将环境变量BADASS_LIBCLANG
设置为
libclang
动态库的完整路径。例如,在我的
Linux,它是/usr/lib/x86_64-linux-gnu/libclang-9.so.1
。所以我决定
BADASS_LIBCLANG=/usr/lib/x86_64-linux-gnu/libclang-9.so.1
在我的
.bashrc
一切都很好。在
据报道,在MacOS上,您需要安装XCode
命令行工具,您将在路径中找到动态库
比如/Library/Developer/CommandLineTools/usr/lib/libclang.dylib
。在
如果需要运行badass
,则可能需要设置BADASS_LIBCLANG
在badass run
内(例如,在prepare.sh
或build.sh
脚本中)
因为在本例中,badass
被firejail
锁定,找不到
libclang
本身。在
我在用MacOS,它不工作
给我发一个错误报告,也许我们可以互动解决这个问题 解决了的。我没有Mac电脑,所以不能测试。在
我用的是Windows,它不工作
的确如此。永远不会。(尝试使用Windows子系统for Linux。)
许可证
badass
(C)2020年,弗朗克·波默罗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/.
- 项目
标签: