2010-01-25 27 views
7

Chúng tôi đang cố gắng sử dụng Fitnesse để kiểm tra chức năng của chúng tôi. Tôi có nên chế nhạo phụ thuộc hay nó nên được thử nghiệm đối với cơ sở dữ liệu?Fitnesse- Các xét nghiệm có nên nói chuyện với cơ sở dữ liệu không?

Ưu điểm/nhược điểm của một trong hai cách tiếp cận là gì?

Toàn bộ vấn đề kiểm tra đối với DB là thiết lập dữ liệu phụ thuộc rất lớn. Nếu chúng ta giả lập thì nó là thử nghiệm chức năng thực sự?

Cảm ơn

Trả lời

4

Chúng tôi có một bộ đầy đủ các bài kiểm tra chức năng kết thúc chạy trong fitnesse ở hai chế độ: "InMemory" và "Database" , Tùy thuộc vào cấu hình để chạy các bài kiểm tra trong các mệnh lệnh mà kho lưu trữ các bài kiểm tra sử dụng. Điều này có một số lợi thế:

1) Nó giúp các nhà phát triển xây dựng rất nhiều chức năng vào cơ sở dữ liệu và giữ mã.

2) Khi "Trong bộ nhớ" các thử nghiệm fitnesse chạy rất nhanh. Cho phép các bài kiểm tra thất bại rất nhanh ... và do đó tăng tốc độ phát triển và sự nhanh nhẹn. Khi họ chạy trong chế độ db chỉ họ mất một thời gian.

+0

Cảm ơn. Hoàn toàn có ý nghĩa. – Naveen

0

Tôi nghĩ rằng nó nên kiểm tra cơ sở dữ liệu. Bởi vì khi bạn đang làm thử nghiệm chức năng với fitnesse, bạn shoudnt được sử dụng giả. Sử dụng nó với cơ sở dữ liệu để biết các chức năng cơ sở dữ liệu thực tế làm việc tốt hay không như DB của bạn sẽ có một dữ liệu rất lớn.

+0

Cảm ơn. Điều gì về nỗi đau của dữ liệu thiết lập? Đó không phải là khó khăn cho mỗi và mọi trường hợp thử nghiệm. Chúng tôi muốn sử dụng phần này của CI. Việc Fitnesse thiết lập dữ liệu dễ dàng hay khó khăn như thế nào? – Naveen

3

tôi thấy (ít nhất) 2 loại xét nghiệm có thể được thực hiện với FitNesse:

  • thử nghiệm (hoặc ví dụ) nhằm định logic miền hoặc hành vi. Tôi có xu hướng không phải để sử dụng với quyền truy cập cơ sở dữ liệu vì điều này thường không quan trọng đối với mục đích của thử nghiệm.

  • Kiểm tra từ đầu đến cuối (hoặc gần như đầu cuối) được sử dụng làm kiểm tra hồi quy hoặc khói. Đây rõ ràng là bao gồm chức năng cơ sở dữ liệu.

Lợi ích của DB là thử nghiệm là đại diện của hệ thống sản xuất thực tế, nhược điểm là chi phí bổ sung thiết lập và quản lý trạng thái cơ sở dữ liệu. Nhìn vào DbFit, một bộ đồ đạc được thiết kế để giúp thiết lập và xác minh DB.

1

Tôi muốn cô lập các thử nghiệm tích hợp liên quan đến DB trong NUnit. Kiểm tra fonctional của bạn không nên thất bại vì các vấn đề tích hợp. Tôi thấy thoải mái hơn khi mang trạng thái đối tượng thông qua đơn giản hơn DB.

0

Tôi đã làm việc để tạo một bộ thử nghiệm khác cho các công cụ liên quan đến DB, điều này giúp tôi tự tin hơn khi tham gia thử nghiệm chức năng khác. Những thứ như quy tắc kinh doanh, procs được lưu trữ và một số bảng cơ bản nhưng quan trọng có thể được xác thực để đảm bảo chúng là nơi chúng giả sử và hiển thị kết quả phù hợp. Nếu đó là như mong đợi thì những gì bạn thấy trên giao diện người dùng phải là môi trường vững chắc để thực hiện các kiểm tra chức năng

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