/** /** |
IUnitDataSetdataset=testContext.getTestInstance().getClass().getAnnotation(IUnitDataSet.class); if(dataset==null){ handleDataSet=false; return; } this.testInstance=testContext.getTestInstance(); databaseTester=newJdbcDatabaseTester(//创建数据库链接对象 PROPERTIES .getProperty(PropertiesBasedJdbcDatabaseTester.DBUNIT_DRIVER_CLASS), PROPERTIES .getProperty(PropertiesBasedJdbcDatabaseTester.DBUNIT_CONNECTION_URL), PROPERTIES .getProperty(PropertiesBasedJdbcDatabaseTester.DBUNIT_USERNAME), PROPERTIES .getProperty(PropertiesBasedJdbcDatabaseTester.DBUNIT_PASSWORD)); } @Override publicvoidbeforeTest(TestContexttestContext)throwsException{ if(!handleDataSet){ return; }//测试开始前将数据插入到db databaseTester.setDataSet(getDataSet()); databaseTester.setSetUpOperation(DatabaseOperation.REFRESH); databaseTester.onSetup(); } //测试数据文件和测试类之间的‘潜规则’ protectedIDataSetgetDataSet()throwsException{ Stringpack=testInstance.getClass().getName(); StringfilePath=“/”+pack.replaceAll(“[.]”,“/”)+“.xml”; returnnewFlatXmlDataSetBuilder().build(this.getClass().getResourceAsStream(filePath)); } /** *将文件中准备的测试数据从数据库中清空 * *@throwsException *@seecom.crazycoder2010.iunit.IUnitTestExecuteListenerAdapter#afterTest(com.crazycoder2010.iunit.TestContext) */ @Override publicvoidafterTest(TestContexttestContext)throwsException{ if(!handleDataSet){ return; } databaseTester.setTearDownOperation(DatabaseOperation.DELETE); databaseTester.onTearDown(); } |
相关链接: