我正在使用TestNG编写单元测试。对于我的一堂课,我得到ExceptionInInitializerError
。
我发现添加
@PrepareForTest({ChatBotInteractionHelper.class}) .
当我从上面的注释中删除ChatBotInteractionHelper.class
时,它不会引发ExceptionInInitializerError
错误,但会在ChatBotInteractionHelper
类内调用静态块。即以下代码停止工作:
MockRepository.addSuppressStaticInitializer("packagename.abc.class")
这是我的代码的结构。
@PowerMockIgnore({"javax.ws.*","org.apache.http.conn.ssl.*", "javax.net.ssl.*" , "javax.crypto.*"})
@PrepareForTest({ChatBotInteractionHelper.class})
public class StopAndExitTests {
@InjectMocks
private ChatBotInteractionHelper interactHelper;
static{
MockRepository.addSuppressStaticInitializer("a.b.c.ChatBotInteractionHelper");
}
@Test
public void test(){
// do something
}
@ObjectFactory public IObjectFactory getObjectFactory() {
return new org.powermock.modules.testng.PowerMockObjectFactory();
}
}
有人可以告诉我我在这里面临的问题吗?由于这个问题,我被封锁了两天。