我正在尝试在Eclipse中使用JUnit运行测试但是测试用例没有运行且holly控制台没有显示任何内容。控制台中唯一出现的行是:
<terminated>AccountManagmentModuleTest[JUnit] D:\Program Files\Java\jdk1.6.0_26\bin\javaw.exe(Nov 23, 2012 12:08:49 PM)
我想做的就是运行测试用例。有些行正在执行,比如开始连接到db,但是没有使用DriverManager创建的连接对象,也不会抛出任何异常。
enter code here
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
conn = DriverManager.getConnection("jdbc:oracle:oci8:@local ip:1521:orcl", "dipak1","dipak1"); //got to finally from here, not even catching anything!!!
cstmt = conn.prepareCall(query);
cstmt.execute();
} catch (Exception e) {
e.printStackTrace();
} finally {
if (null != conn) {
if (null != cstmt) {
cstmt.close();
}
conn.close();
}
}
答案 0 :(得分:1)
听起来您的测试正在执行但不会产生您期望的输出。确保打开JUnit视图:
窗口&gt;显示视图&gt;其他...&gt; Java&gt; JUnit的强> 的
此视图将直观地显示已运行的测试数量以及已通过的测试数量。如果测试失败,您可以右键单击失败的测试并进行调试。您还可以查看已发生的例外情况。
除非您在测试中包含输出语句(通过日志记录框架或简单的println
语句),否则控制台窗口不会显示JUnit测试的任何输出。只有JUnit视图才会显示测试是否通过。
答案 1 :(得分:1)
使用Junit进行单元测试时,不应使用try和catch块使用throws Exception。 而不是if(null!= conn)使用JUnit断言测试(assertNotNull或assertEquals或另一个)。 要在Eclipse上运行JUNit测试:
在面板JUnit上,您可以看到单元测试结果是成功还是失败。
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
@Test
public void testDbConnexion() throws Exception
{
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
conn = DriverManager.getConnection("jdbc:oracle:oci8:@local ip:1521:orcl", "dipak1","dipak1"); //got to finally from here, not even catching anything!!!
cstmt = conn.prepareCall(query);
cstmt.execute();
assertNotNull(conn);
assertNotNull(cstmt);
connn.close();
}