python - 在 python 中测试 if-elif-else 条件的有效方法是什么

标签 python if-statement testing

我有一堆需要评估的 python 程序。程序的基本框架包含一堆嵌套的 If-elif-else 语句。我想知道什么是最有效的方法来测试(生成测试用例)来测试程序。

以下是该计划的要点

if month == 1:
    if day <= 20:
        print("Capricorn")
    else:
        print("Aquarius")

elif month == 5:
    if day <= 21:
        print("Taurus")
    else:
        print("Gemini")
else:
    if day <= 21:
        print("Sagittarius")
    else:
        print("Capricorn") 

它包含更多的 elif 条件。但我想,你明白了。我想知道如何生成测试用例或测试涵盖所有条件的代码。

最佳答案

开始编写测试,但包括覆盖率工具。您可以安装 coverage package并直接使用它,或者与 nosezope.testrunner 等测试运行器一起使用。

它会告诉您测试是否未能执行任何代码行;运行测试后,代码覆盖率报告会为您提供覆盖率百分比和您错过的确切行数。

您甚至可以使用其他工具,例如 duvet可视化您可能错过的线路,或与 Jenkins 或 TeamCity 等持续集成工具集成以跟踪一段时间内的覆盖范围。

关于python - 在 python 中测试 if-elif-else 条件的有效方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28375408/

相关文章:

python - 将 s3cmd 与其他类似 s3 的提供商一起使用

python - 列表和元组的行为不同

python - 使用Python3.6以 "if ... is not None"结束input()

ios - 如果变量为空,如何形成 if 语句来重复方法?

python - gtk.Builder() 和多个空地文件中断

python - 将非文本文件读入 Python

if-statement - If - Else 条件

angular - 通过 spy /karma 模拟服务类时无法读取未定义的属性 'doc'

在 Linux 中使用 wine 的 .Net Framework

haskell - 测试 Main 模块中定义的 Haskell 代码