在 python 中,我有一个名为 script.py
的脚本和一个包含测试的子目录
tests
__init__.py
test_set01.py
test_set02.py
为了检查 script.py
中未测试的函数,我使用这个 bash script
#!/bin/bash
for f in $(egrep "^def" script.py | sed "s/(/\t/" | awk '{print $2}' )
do
if [ "" = "$(grep $f tests/*.*)" ]
then
echo $f
fi
done
是否存在无需测试即可找到函数的更好方法?
最佳答案
有几个很好的项目旨在检测您所谓的“代码覆盖率”。也就是说,单元测试覆盖了多少代码。就像有多个项目一样,您可以采取多种不同的措施来确定代码覆盖率:
- 代码行数
- 功能点
- 逻辑路径
所有这些都可以玩。但是,任何解决方案都可能比像您所做的那样 grep 更好。
看看:
- > Coveragepy .
- 对于 Nose ,请查看 cover .
- 还有 Figleaf (但我不知道它与 Coverage 相比成熟度如何。)
关于python - 搜索未测试的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21909197/