【问题标题】:Python nose critical vs non-critical testsPython 鼻子关键与非关键测试
【发布时间】:2014-02-13 02:56:56
【问题描述】:

我仍在学习 Python 测试,找不到这个问题的直接答案。

我正在使用 python 来驱动我的应用程序上的 selenium 测试。我用鼻子运行测试套件。

有些测试很关键,必须通过才能让代码签入成为可接受的。其他测试有时会由于我们无法控制的因素而失败,并且并不重要。

是否有一个标准的鼻子插件可以让我指定哪些测试不是关键的,并给我一个故障报告?还是有其他标准方法可以做到这一点?

【问题讨论】:

    标签: python testing nose nosetests


    【解决方案1】:

    您始终可以使用attrib 插件并使用@attr('critical') 装饰您的关键测试

    在您的 CI 中,运行两次,一次使用 -a critical=True(并以此为条件您的签入/部署)和 -a critical=False

    【讨论】:

      【解决方案2】:

      首先,“允许失败,因为它们不重要”的测试可能根本不是一个好主意。 你应该尽量减少外部因素的影响,并有一个环境可以让你始终如一地运行测试,尤其是重现你可能发现的任何错误。

      也就是说,现实可能与理论有很大不同,所以我们开始吧:

      是否有一个标准的鼻子插件可以让我指定哪个 测试并不重要,并给我一份故障报告?

      不,在他们网站上提到的built-in pluginsthird-party plugins 之外的列表中。

      或者有其他标准的方法吗?

      对于pyunit(以及因此nose),测试只能通过或失败;两者之间没有任何东西。 为了在查看测试结果时获得更好的概览,我会将此类测试保存在单独的测试套件中,独立于常规的“必须通过”测试。 此外,如果允许这些不重要的测试在不阻止签入的情况下失败,那么在我看来,它们的执行也应该是可选的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-19
        • 1970-01-01
        • 1970-01-01
        • 2023-04-07
        • 2022-01-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多