有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java buildSessionFactory在junit测试模式下抛出“网络适配器无法建立连接”错误,在实时模式下可以正常运行

在单元测试中,我被卡住了。 当我使用dao时,buildSessionFactory方法抛出“网络适配器无法建立连接”错误。 这在实时模式下运行良好
下面是单元测试代码

public class OAuth20Test {  
    
private UserDetailsDAOI userDetailsDAO;

@BeforeEach
public void setUp () throws Exception {
    this.userDetailsDAO = new UserDetailsDAO();
}    

@Test                                               
@DisplayName("Simple checkAuthGrant should work")   
public void testCheckAuthGrant() {
   if (this.userDetailsDAO == null) {
       System.out.println("user dao is null");
   } else {
       assertEquals(true, userDetailsDAO.checkAuthGrant("*****", "*****", "*****", "*****"),      
    "Regular checkAuthGrant should work");          
   }
}    

这是userDetialsDAO中的getMainDBSessionFactory函数

long lStartTime = System.currentTimeMillis();

Configuration mainDBConfiguration = getMainDBSessionConfiguration();

Configuration configuration = new Configuration();

String dbType = DAOConfiguration.getString("dao.db.type", "");

String mainHibernateConfigFileName = "hibernate-config-main-" + dbType + ".xml";

   
  ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
      .applySettings(mainDBConfiguration.getProperties())
      .configure(mainHibernateConfigFileName)
      .build();
  
  return mainDBConfiguration.buildSessionFactory(serviceRegistry);

buildSessionFactory函数来自包组织。冬眠cfg

错误发生在mainDBConfiguration.buildSessionFactory(serviceRegistry)

我发现发生此错误的原因是JUnit与创建会话工厂不兼容

应对这种情况的方法是什么


共 (0) 个答案