gpt4 book ai didi

python - 禁用仅用于自动执行的 Python 单元测试?

转载 作者:行者123 更新时间:2023-12-04 10:57:20 24 4
gpt4 key购买 nike

装修工@unittest.SkipTest防止在测试类中运行单元测试时自动执行单元测试。不幸的是,这也使
PyCharm 中的单独执行(通过右键单击函数并
为该测试方法选择运行/调试)失败并返回 TypeError: don't know how to make test from: <function .... at 0x7fbc8e1234c0>有没有办法从自动(批量)执行中禁用单元测试
运行完整的测试类,但手动保留它的可执行性(最好在 PyCharm 中),这样它就可以运行而无需对测试文件进行任何更改?
我想@unittest.skipUnless(condition, reason)可能会派上用场,但无法提出只有在测试完成时才满足的条件
手动启动。任何建议表示赞赏!

最佳答案

您是否尝试过包含在通过 CI/CD 运行时设置的参数?您可以将默认值设置为 false,然后 CI/CD 将其设置为 true。这会给你你正在寻找的条件。

据我所知,区分 CI/CD 运行和 IDE 运行的唯一方法是通过一些必须设置的中间参数。

编辑:
尝试在 PyCharm 中为该特定测试设置自定义构建配置。您可以让该构建配置将参数传递给您的测试套件。那时,当您使用命令行与 PyCharm 的集成测试运行器运行测试时,您将有一个适当的条件来不跳过此测试。

为简单起见,您希望参数的默认值是跳过,并且仅通过在 PyCharm 的特殊构建配置中将 True 传递给该参数来将 bool 值设置为不跳过。

见:https://www.jetbrains.com/help/idea/build-configuration.html

关于python - 禁用仅用于自动执行的 Python 单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59095631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com