当使用junit4+;为了执行所有测试套件,我得到一个错误:swt-win32-3650.dll已经加载到另一个类加载器中
当使用junit4+powermock执行所有测试套件时,我得到一个错误:swt-win32-3650.dll已加载到另一个类加载器中 alltest.java:当使用junit4+;为了执行所有测试套件,我得到一个错误:swt-win32-3650.dll已经加载到另一个类加载器中,dll,classloader,powermock,loaded,Dll,Classloader,Powermock,Loaded,当使用junit4+powermock执行所有测试套件时,我得到一个错误:swt-win32-3650.dll已加载到另一个类加载器中 alltest.java: @RunWith( Suite.class ) @SuiteClasses( {test1.class, test2.class} ) public class AllTests { } test1.java @RunWith( PowerMockRunner.class ) @PrepareOnlyThisForTest( {Ob
@RunWith( Suite.class )
@SuiteClasses( {test1.class, test2.class} )
public class AllTests
{
}
test1.java
@RunWith( PowerMockRunner.class )
@PrepareOnlyThisForTest( {Object.class} )
public class test1 extends TestCase
{
@Test
public void testcase()
{
Shell sh = Mockito.mock( Shell.class );
PowerMockito.when( sh.getText() )
.thenReturn( this.getClass().getName() );
PowerMockito.when( sh.getText() )
.thenReturn( this.getClass().getName() );
assertTrue( sh.getText() == this.getClass().getName() );
}
}
test2.java
@RunWith( PowerMockRunner.class )
@PrepareOnlyThisForTest( {Object.class} )
public class test2 extends TestCase
{
@Test
public void testcase()
{
Shell sh = Mockito.mock( Shell.class );
PowerMockito.when( sh.getText() )
.thenReturn( this.getClass().getName() );
assertTrue( sh.getText() == this.getClass().getName() );
}
}
用于将冲突类的加载延迟两次。您提到的dll swt-win32-3650.dll可能已经加载。因此,检查哪些类可以做到这一点,并将它们放在PowerMockIgnore参数中