【问题标题】:assert vs == for testing code in Python?断言 vs == 用于在 Python 中测试代码?
【发布时间】:2017-01-13 10:36:54
【问题描述】:

在测试 python 函数时需要导入 unittest 并运行 assertTrue(例如),而不是使用 == True 编写通常的 python 函数来检查测试?单元测试有什么新东西,因为即使是测试用例也必须由用户编写,可以通过 == 而不是单元测试中的 assert 系列函数来检查?我的问题基本上是:在 unittest 中断言与 Python 中的相等检查操作 ==。

【问题讨论】:

  • 不。我的问题是关于单元测试中的断言与 Python 中的一般相等检查操作 ==。
  • 您使用断言来定义预期的行为。如果断言失败,则测试将失败。例如。 assertTrue(3 < 4, 'Operator < does not work.')。操作员== 自己不会做这样的事情。它只返回 True 或 False。
  • 当 == 运算符返回 False 时,我不能只打印测试失败吗?那么断言有什么大不了的呢? (这里是新手,谢谢!)@zvone
  • 如果您有一个或您想要测试时手动运行的测试,您可以打印。但是,如果您有 1000 个测试会自动运行,那么您就不想阅读打印件 - 使用断言,unittest 知道哪些测试失败,然后您可以例如配置系统以在测试失败时向您发送电子邮件。

标签: python python-2.7 unit-testing testing tdd


【解决方案1】:

我想说最有趣的是 unittest 包(以及其他包,例如 pytest)提供的“易于测试”。使用 unittest 时,您只需运行一个命令并检查您的重构或最后一个功能是否破坏了程序的其余部分。我会阅读一些关于test-driven development 的内容,以更好地理解单元测试的重要性。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-03-25
    • 2018-12-15
    • 2023-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多