MSTest Custom TestInitialize每次测试

时间:2017-10-11 10:37:11

标签: mstest

我有一个TestClass,其中包含许多TestMethod个方法。有一种ClassInitialize方法可以设置所有测试所需的公共环境。

但是,某些测试需要在回滚的事务中运行,而有些测试不需要

有没有办法用MSTest选择的特殊属性装饰那些少数测试,然后在运行之前设置TransactionScope并在之后回滚?

或者,TestInitialize方法中有没有办法告诉哪个测试方法正在运行,并手动检查该方法是否有自定义属性,如果是这样,请手动设置TransactionScope ?等价物必须编码到TestCleanup方法中。

我宁愿不将需要tx回滚的这些测试拆分为单独的TestClass,因为我只需要一个ClassInitialise方法来设置环境,并且运行起来很昂贵。我无法保证哪个TestClass会在另一个TestClass之前执行(它们甚至可以分布在不同的测试代理中)。

作为一个后备,我知道我可以让每个TestMethod在回滚的tx内运行,但我只是想知道我要求的是否可能。

0 个答案:

没有答案