Python 我们可以在pytest中使用多个addfinalizer吗

Python 我们可以在pytest中使用多个addfinalizer吗,python,testing,pytest,Python,Testing,Pytest,我想在pytest中添加多个finalizer函数,因此可以添加多个addfinalizer。如果是,那么执行的顺序是什么。 任何帮助都将不胜感激 谢谢您可以添加多个终结器。从: yield和addfinalizer方法在测试结束后通过调用它们的代码来工作,但addfinalizer在yield上有两个关键区别: 可以注册多个终结器函数 无论夹具设置代码是否引发异常,都将始终调用终结器。这对于正确关闭设备创建的所有资源非常方便,即使其中一个资源无法创建/获取: 这个问题与讨论订单问题(并提供更好

我想在pytest中添加多个finalizer函数,因此可以添加多个addfinalizer。如果是,那么执行的顺序是什么。 任何帮助都将不胜感激


谢谢

您可以添加多个终结器。从:

yield和addfinalizer方法在测试结束后通过调用它们的代码来工作,但addfinalizer在yield上有两个关键区别:

  • 可以注册多个终结器函数
  • 无论夹具设置代码是否引发异常,都将始终调用终结器。这对于正确关闭设备创建的所有资源非常方便,即使其中一个资源无法创建/获取:

  • 这个问题与讨论订单问题(并提供更好的解决方案)非常相似。

    您可以添加多个终结器。从:

    yield和addfinalizer方法在测试结束后通过调用它们的代码来工作,但addfinalizer在yield上有两个关键区别:

  • 可以注册多个终结器函数
  • 无论夹具设置代码是否引发异常,都将始终调用终结器。这对于正确关闭设备创建的所有资源非常方便,即使其中一个资源无法创建/获取:
  • 这个问题非常类似于讨论顺序问题(并提供了更好的解决方案)