pytest中实际和预期的正确顺序是什么?

时间:2018-12-06 12:11:27

标签: python pytest python-unittest

question给出了assertEqual(expected, actual)的顺序,尽管是unittest包的顺序。

但是Pycharm和pytest根据actual==expected的顺序打印出“ Expected:...”和“ Actual ...”。

这令人困惑。 pytest的正确顺序是什么?源代码和在线文档没有说明。

(我还注意到JUnit和TestNG在这一点上意见分歧。)

2 个答案:

答案 0 :(得分:4)

对于在CLI或PyCharm中运行的pytest,顺序为:

assert actual == expected

例如:

def test_actual_expected():
    expected = 4
    actual = 2+1
    assert actual == expected

将失败并显示消息

enter image description here

答案 1 :(得分:1)

BDFL不喜欢actual/expected terminology,而文档是specifically changed来解决这个问题。

如果您的工具期望以某种顺序进行参数传递,那么我认为最正确的做法是始终如一地为您的工具工作。