对于我正在测试的应用程序,我想创建一个autouse=True
夹具,如果他们尝试发送电子邮件意外,它会对smtplib.SMTP.connect
进行失败测试。执行pytest fixtures的顺序是?
然而,在我确实希望测试,以发送电子邮件的情况下,我想用不同的灯具记录这些邮件,而不是(使用smtpserver
夹具从pytest-localserver
和的Monkeypatching的connect
方法使用主机/端口返回最有可能通过该灯具)
当然,只有在其他灯具(装载为funcarg)之前执行自动灯具夹具才能工作。是否有特定的固定装置执行顺序和/或是否有保证执行顺序的方法?
一个非常有效的问题,我已经看到了灯具被滥用了很多时间,最有问题的事情之一是固定运行的是哪一个 – Fruch 2014-12-10 18:41:18
另一种伎俩前有用的是知道夹具可以检查pytest标记的测试功能。这意味着您可以'@标记'需要做特殊事情的测试,然后使用请求对象检查测试函数是否有标记。如果是这样,请在您的灯具中执行不同的操作。 – user2859458 2017-03-24 22:55:05