Tôi có một ứng dụng mà cơ sở dữ liệu prod/test/qa chỉ là Oracle. Hơn nữa, tôi nghi ngờ các truy vấn SQL là đặc thù của Oracle. Và không may, ứng dụng này có thứ hai để không có bài kiểm tra đơn vị.Làm thế nào để sử dụng Oracle như một cơ sở dữ liệu nhúng để chạy thử nghiệm đơn vị trong maven?
Kết quả là, tôi muốn thực hiện các bài kiểm tra đơn vị, cụ thể liên quan đến thành phần tìm kiếm (rõ ràng là thực hiện rất nhiều hoạt động của Oracle, bao gồm tạo bảng).
Thông thường, khi tôi muốn chạy thử nghiệm, tôi bắt đầu một cơ sở dữ liệu nhúng (HSQL, ví dụ), chạy thử nghiệm của tôi trên cơ sở dữ liệu đó và để nó biến mất khi kết thúc kiểm tra của tôi.
Do sự thiếu tự tin của tôi về mức độ tiêu chuẩn hóa của ứng dụng này, tôi muốn chạy thử nghiệm trên cơ sở dữ liệu Oracle. Kết quả là, tôi muốn bắt đầu cơ sở dữ liệu oracle khi các bài kiểm tra của tôi bắt đầu, điền nó với một số datan kiểm tra và dừng nó vào cuối thử nghiệm. Làm thế nào tôi có thể làm điều đó trong một bối cảnh maven?
Gợi ý: chính xác về từ ngữ. Tôi nghĩ rằng đại đa số các chuyên gia CNTT sẽ không xem xét một thử nghiệm cần một cơ sở dữ liệu đang chạy ... để trở thành một thử nghiệm ** đơn vị **. Tốt hơn gọi nó là một thử nghiệm chức năng hoặc tích hợp; chỉ để ngăn chặn quan niệm sai lầm cho mọi người xung quanh bạn. Các thử nghiệm ** đơn vị ** thực sự chạy vào thời gian biên dịch; họ chỉ cần các lớp được biên dịch của bạn và JUnit - không phải một số cơ sở dữ liệu nhúng, hệ thống tệp, dịch vụ web, ổ cắm, ... – GhostCat