我一直在训练JUNIT测试。我想测试配置文件配置是否正确?我写了一个测试,它应该抛出一个FileNotFoundException。但是当我运行测试但它抛出异常时,它会通过测试。我想设计的是,如果PropertiesConfiguration.configure方法抛出异常,它应该失败测试。我的代码如下:
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.FileNotFoundException;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class isPropertiesOfLog4jExistAndConfiguredCorrectly {
Logger log = null;
File f=null;
@Before
public void setUp() throws Exception {
log=Logger.getLogger(GuestBookExample.class.getName());
f=new File("/web-inf/classes/log4j.properties");
}
@After
public void tearDown() throws Exception {
}
@Test
public void test() {
assertTrue("Configuration file is exist.",f!=null);
}
@Test
public void test2(){
PropertyConfigurator.configure("/....web-inf/classes/log4j.properties");
}
}
答案 0 :(得分:0)
PropertyConfigurator配置您的log4j。您无法修改此类的行为(例如,它如何处理失败)。因此,您只能检查配置是否正确完成。尝试验证记录器的某些属性:
@Test
public void test2(){
PropertyConfigurator.configure("/....web-inf/classes/log4j.properties");
Logger log = Logger.getLogger(GuestBookExample.class.getName());
assertEquals(Level.WARN, log.getLevel());
}