我正在使用python + pytest + xdist + selenium grid构建测试框架。该框架需要与预先存在的自定义日志记录系统进行通信。作为此日志记录过程的一部分,我需要提交API调用:设置每个新的测试运行,在这些测试运行中设置测试用例,并将字符串和屏幕截图记录到这些测试用例。
第一步是设置一个新的测试运行,并且API调用返回(除其他外)测试运行ID。我需要保留此ID以供所有测试用例阅读。我想把它放在某个地方的全局变量中,但是用xdist运行我的测试会导致框架失去对值的跟踪。
我试过了:
此时,我正在考虑将其写入临时文件,但这看起来很原始,我认为我忽略了一个更好的解决方案。什么是跨多个xdist线程存储和访问全局数据的最正确,pytest风格的方法?