Powermock测试在单独运行时通过但在套件中失败

时间:2013-08-23 17:20:07

标签: java unit-testing testng easymock powermock

我正在使用powermock + easymock + testng

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="My Module" suite-preserve-order="true" verbose="10"
    object-factory="org.powermock.modules.testng.PowerMockObjectFactory">  
    <test verbose="2" name="module1" annotations="JDK">
        <classes>
            <class name="com.mymodule.TestClass1" />
            <class name="com.mymodule.TestClass2" />
            <class name="com.mymodule.TestClass3" />
        </classes>
    </test>
</suite>

Test1&amp; 2合作。当我添加Test3时,他们开始失败,出现各种错误,如java.lang.IllegalStateException:没有最后一次调用可用的模拟

我通过添加注释@PrepareEverythingForTest

修复了Test1

但我无法修复测试2&amp; 3本身已经开始失败。测试3单独工作。值得一提的是这些类共享一些模拟类,并且它们本身已经在彼此的测试用例中被嘲笑。默认情况下,我使用的注释如

@PrepareOnlyThisForTest({TestClass2.class,SharedClass.class})

我该如何解决这些问题。看起来在测试中共享了一些模拟。 如何阻止它。

请回复

0 个答案:

没有答案