我正在编写一个 JUnit 测试,试图测试与 SqlServer 数据库的连接(我知道,我知道......我不应该对数据库进行单元测试)。问题是,我已经在 glassfish 中设置了数据源,实际上,ping 测试“成功”了。但是!,当我尝试这个时:
注意:配置是:来自本地 Glassfish 的单元测试(ping OK),远程数据库
@Test
public void simpleConnect() {
try {
Context ctx = new InitialContext();
DataSource dataSource = (DataSource) ctx.lookup("MyDataSource");
Connection con = dataSource.getConnection();
assertTrue(con != null && dataSource != null);
}
catch (NamingException ex) {
fail("Cannot get connection: " + ex);
}
catch (SQLException ex) {
fail("Cannot get connection: " + ex);
}
}
什么都没有发生,测试永远不会结束,NO 抛出 Ok 或 Fail。我不知道我是否真的得到了联系。