2009-04-23 30 views
20

Có khung kiểm tra đơn vị .NET (2.0) khác cho Mã truy cập cơ sở dữ liệu 'ngoài DbUnit.NET không?Các giải pháp thay thế DbUnit.NET

Tôi đã thử DbUnit.NET và một số thứ không được hỗ trợ. Ngoài ra, dự án có vẻ là alpha kể từ ngày 22 tháng 5 năm 2006 ...

Chúng tôi đang tái cấu trúc kiến ​​trúc để có thể thực hiện các thử nghiệm với khung mocking, nhưng cho đến khi công việc được thực hiện, tôi muốn có một khung như DbUnit.NET (nhưng tốt hơn).

+0

DbUnit.NET cũng dường như không làm tất cả những thứ mà DbUnit bình thường (cho Java) làm ... bạn có bao giờ tìm thấy một giải pháp thay thế khác không? – CodingWithSpike

+0

Không, và tôi đã ngừng sử dụng DbUnit.NET. –

Trả lời

13

Tôi đã gặp sự cố này vài năm trước. Tôi đã bực mình ở trạng thái của DBUnit.Net. Nó thiếu các tính năng quan trọng đối với tôi. Nhờ có IKVM, nó không phải là rất khó khăn để sử dụng phiên bản Java thông thường của DBUnit từ dotnet. Như một vấn đề của thực tế, tôi đang chạy thử nghiệm tích hợp C# ngay bây giờ đang sử dụng DBUnit gốc. Đây là cách tôi chuyển đổi phiên bản java của DBUnit thành một hội đồng Net:

  • Tải IKVM
  • Đặt lọ sau vào một thư mục chung: commons-bộ sưu tập-3.2.jar commons-logging-1.1.jar junit -4.1.jar commons-lang-2.2.jar DBUnit-2.2.jar sqljdbc.jar

Bây giờ, từ dòng lệnh với một thư mục làm việc của thư mục jar chung:

ikvmc -target:libary -keyfile:yoursignature.snk -debug -version:2.2.0.0 -out:dbunit.dll *.jar 

Bạn có thể nhận được các thư viện cần thiết từ các địa điểm sau:

Nếu bạn không sử dụng SQL Server làm cơ sở dữ liệu của bạn, sau đó thay thế sqljdbc.jar bằng trình điều khiển JDBC thích hợp. Để sử dụng DBUnit trực tiếp từ mã .Net của bạn, bao gồm dbunit.dll và các hội đồng IKVM thích hợp.

Các phiên bản bình tôi đã đưa ra ở đây là cũ. Ghi chú của tôi về chủ đề này đã gần ba tuổi. Các phiên bản mới hơn có thể sẽ hoạt động, nhưng tôi chưa thử chúng.

25

Chúng tôi đang sử dụng NDbUnit cho một trong các dự án của chúng tôi. Đó là một dự án tích cực hơn DbUnit.NET.

+2

Dự án được chuyển đến github: https://github.com/NDbUnit/NDbUnit – Vova

5

Cân nhắc tdunit:

TDUnit là một tiện ích kiểm tra đơn vị tương tự như DBUnit.Net. TDUnit giúp với quyền truy cập cơ sở dữ liệu thử nghiệm đơn vị bằng cách cho phép bạn giữ các mã định danh và các ràng buộc khóa ngoài được kích hoạt trên cơ sở dữ liệu thử nghiệm của bạn bằng cách cho phép các giá trị phụ thuộc trong tệp XML dữ liệu thử nghiệm.

TDUnit sử dụng tệp XML tương tự về tinh thần đối với DBUnit để chỉ định kiểm tra dữ liệu được tải vào cơ sở dữ liệu với một khác biệt lớn. TDUnit cho phép tạo dữ liệu thử nghiệm chứa các cột nhận dạng và các mối quan hệ giữa các bảng.Ví dụ trong TDUnit bạn có thể tải một hàng của khách hàng vào bảng Khách hàng và sau đó tham chiếu tự động ID được tạo (Cột nhận dạng) cho khách hàng trong bảng Thứ tự. Mặc dù được viết bằng C# 3.0, nó có thể được sử dụng từ các dự án Net 2.0 là miễn là .Net Framework 3.5 được cài đặt. Bằng cách xác định dữ liệu thử nghiệm trong tệp XML, dữ liệu cần thiết cho các thử nghiệm có thể được giữ lại với các thử nghiệm và chèn TDUnit và loại bỏ dữ liệu thử nghiệm. Điều này cho phép cơ sở dữ liệu thử nghiệm của bạn vẫn trống, cho phép thay đổi nhanh hơn và phân bổ dễ dàng hơn cho nhóm.

~ từ Mô tả dự án trên trang chủ của họ.

Các vấn đề liên quan