我在C#环境中使用Xunit进行单元测试。 我有一些静态资源,如静态缓存,我测试的一些方法依赖于静态缓存。 在我的单元测试中,我根据需要修改了这个静态缓存,并检查我的方法的行为是否相应地改变了。在测试结束时,我清理了我的静态缓存,以便其他单元测试不会受到影响。
当我并行运行所有单元测试时,问题就开始了。 依赖于静态缓存的多个单元测试同时运行,这使得测试不稳定(一次成功运行,另一次运行失败)。
如何使这些特定测试同步运行?或任何其他解决方案,以清理工作
谢谢!
答案 0 :(得分:0)
您的代码不是线程安全的,可以并行运行,因此当您对它们进行并行单元测试时,它将无法工作(这是预期的)。
有两种可能的解决方案: