为了使单元测试运行更快,我在同一测试用例中共享环境对象和其他一些对象(例如,在我的视图对象的测试用例中,视图管理器对象[作为视图对象的工厂并负责实际渲染])(使用PHPUnit的
setUpBeforeClass()
和静态属性)。尽管据我所知,我分享的对象不应影响测试的完整性(例如,在视图情况下,共享环境和视图管理器对象,但是为每个测试创建单独的视图对象 - 这是实际由测试用例测试的对象),但这让我感觉越来越不对劲。
我希望每个测试都使用完全隔离的环境,并且不能以任何方式影响同一测试用例中的其他测试。然而,这会使测试运行速度变慢,感觉为了一些我无法准确指出缺点的东西而付出了很大的代价,主要只是“感觉不对”。
你怎么看?您能否指出任何缺点,以便我可以说服自己它值得更长的执行时间?还是我反应过度了,这完全没问题?