python - 搜索未测试的函数

标签 python unit-testing testing

在 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

是否存在无需测试即可找到函数的更好方法?

最佳答案

有几个很好的项目旨在检测您所谓的“代码覆盖率”。也就是说,单元测试覆盖了多少代码。就像有多个项目一样,您可以采取多种不同的措施来确定代码覆盖率:

  1. 代码行数
  2. 功能点
  3. 逻辑路径

所有这些都可以玩。但是,任何解决方案都可能比像您所做的那样 grep 更好。

看看:

  1. > Coveragepy .
  2. 对于 Nose ,请查看 cover .
  3. 还有 Figleaf (但我不知道它与 Coverage 相比成熟度如何。)

关于python - 搜索未测试的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21909197/

相关文章:

c# - 如何使用 moq 从 IConfiguration 模拟 GetConnectionString()?

c# - FakeItEasy 不允许设置返回值

java - Spring 单元测试 - 数据库单元测试

java - 如何在 pom 中设置不编译测试?

python - TensorFlow ValueError : Variable does not exist, 或不是用 tf.get_variable() 创建的

python - Pandas 未从 xlsx 文件中读取第一列

python - 使用python从url下载多个压缩文件

python - 使用 Django REST 返回从 Slack 检索的 JSON 对象

Java 8 单元测试 CompletableFuture 异常

azure - 在摘要页面上显示 Azure Devops Pipeline 测试成功百分比