Я использую spring -test-dbunit, и я получаю предупреждение в своих модульных тестах с этим сообщением:
код:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "/context.xml"})
@TestExecutionListeners({ DependencyInjectionTestExecutionListener.class,
DirtiesContextTestExecutionListener.class,
TransactionalTestExecutionListener.class,
DbUnitTestExecutionListener.class })
public class TestDB {
@Autowired
private ICourseService courseService;
@Test
@DatabaseSetup("sampleData.xml")
public void testFind() throws Exception {
List<Course> courseList = this.courseService.getAllCourses();
assertEquals(1, courseList.size());
assertEquals("A001", courseList.get(0).getCourseNumber());
}
}
Внимание:
1093 [main] WARN org.dbunit.dataset.AbstractTableMetaData - Потенциал обнаружена проблема: Тип настроенного типа данных factory ' org.dbunit.dataset.datatype.DefaultDataTypeFactory 'может вызвать проблемы с текущей базой данных "MySQL" (например, некоторые типы данных могут не поддерживаются должным образом). В редких случаях вы можете увидеть это сообщение потому что список поддерживаемых продуктов базы данных является неполным (Список = [Дерби]). Если это так, пожалуйста, запросите обновление класса Java через forums.If вы используете свой собственный IDataTypeFactory, расширяющийся DefaultDataTypeFactory, убедитесь, что вы переопределите getValidDbProducts() для указания поддерживаемых продуктов базы данных.
Проблема может быть решена, если я использую DBunit без spring -test-dbunit следующим образом:
Connection jdbcConnection = DriverManager.getConnection( "jdbc:mysql://localhost/test", "root", "root");
IDatabaseConnection connection = new DatabaseConnection(jdbcConnection);
connection.getConfig().setProperty(DatabaseConfig.PROPERTY_DATATYPE_FACTORY, new MySqlDataTypeFactory());
connection.getConfig().setProperty(DatabaseConfig.PROPERTY_METADATA_HANDLER, new MySqlMetadataHandler());
Я не знаю, как решить эту проблему в spring -test-dbunit. Пожалуйста, помогите.