Tôi đang sử dụng mùa xuân-test-DBUnit và tôi nhận được một cảnh báo trong các thử nghiệm đơn vị của tôi với tin nhắn này:mùa xuân Kiểm tra DBUnit Warning
Code:
@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());
}
}
Cảnh báo:
1093 [main] WARN org.dbunit.dataset.AbstractTableMetaData - Tiềm năng vấn đề được tìm thấy: Nhà máy kiểu dữ liệu được định cấu hình 'lớp org.dbunit.dataset.datatype.DefaultDataTypeFactory' có thể gây ra vấn đề với cơ sở dữ liệu hiện tại 'MySQL' (ví dụ: một số kiểu dữ liệu có thể không được hỗ trợ đúng cách). Trong một số ít trường hợp, bạn có thể thấy thông báo này vì danh sách các sản phẩm cơ sở dữ liệu được hỗ trợ không đầy đủ (danh sách = [derby]). Nếu vậy, vui lòng yêu cầu cập nhật lớp java qua diễn đàn .Nếu bạn đang sử dụng IDataTypeFactory mở rộng riêng của mình DefaultDataTypeFactory, hãy đảm bảo rằng bạn ghi đè getValidDbProducts() để chỉ định các sản phẩm cơ sở dữ liệu được hỗ trợ.
Vấn đề có thể được giải quyết khi tôi sử dụng DBUnit mà không mùa xuân-test-DBUnit như sau:
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());
Tôi không biết làm thế nào để giải quyết vấn đề này trong mùa xuân-test-DBUnit. Hãy giúp tôi.
Và đảm bảo rằng tất cả tên của phương thức đều giống y như @Yser đã đề cập ở trên ... – Nick