2011-01-14 29 views
7

hãy để tôi giải thích những gì tôi đang nhắm đến với câu hỏi này:Thử nghiệm phát triển theo định hướng, Kiểm tra đơn vị

Tôi là người như thế nào? Tôi là người nghĩ về vấn đề này, viết mã và sau đó tự kiểm tra nó. Tôi đang phát triển các ứng dụng web chủ yếu nhưng cũng có các dự án dựa trên giao diện người dùng (RCP/ứng dụng Swing). Tôi chạy ứng dụng của tôi và bấm vào đây, kiểm tra này ... Bạn có thể biết điều này "phong cách".

Tôi là một người cố gắng cải thiện bản thân với mọi dòng/dự án và tôi muốn mã/ứng dụng của mình được kiểm tra thực tế. Tôi viết mã - Tôi muốn kiểm tra mã.

Vì vậy, tôi đã bắt đầu một số lớp/chức năng của mình để sử dụng các bài kiểm tra đơn vị (junit 4). Điều này làm việc cho các công cụ phụ trợ mà không có giao diện người dùng có liên quan - tbh: Tôi thấy khó để viết hầu hết các bài kiểm tra. Nếu chúng ta đang xây dựng một ứng dụng web thì có lẽ các tương tác với phiên làm việc hoặc một thứ gì đó. Tôi đoán bạn có được điểm.

Điều tôi đang tìm kiếm là một số tài nguyên có thể có ví dụ. Bất kỳ lời khuyên cuốn sách tốt sẽ được chào đón quá. Đừng làm cho tôi sai - Tôi không muốn chỉ có các công cụ để kiểm tra logic, tôi quan tâm đến các cách để kiểm tra giao diện người dùng của tôi.

Có lẽ đây là một phần quan trọng quá: Tôi đang phát triển trong Java (85% thời gian) và PHP/Python (phần còn lại)

Trân

Trả lời

2

Bạn có thể sử dụng để Selenium cho hoàn chỉnh thử nghiệm kết thúc trước dưới bất kỳ khung kiểm thử chính thống nào (ví dụ: JUnit). Sau đó, chỉ cần sử dụng một JVM một mình cho mã kết thúc trở lại, đủ dễ dàng. Bạn nên được bảo hiểm trong lĩnh vực này. Với Selenium bạn đang viết một bài kiểm tra đầu cuối để đối lập với một bài kiểm tra đơn vị nguyên tử trên mỗi khía cạnh. Đó là một giao dịch để sử dụng giao diện người dùng hoàn chỉnh để kiểm tra.

1

Có một số khung cho phép bạn kiểm tra Giao diện người dùng của mình, tôi đã thử nghiệm giao diện người dùng với khung FEST cho giao diện người dùng Swing của tôi. Nhưng có những công cụ khác phù hợp nhất với ứng dụng web. Nguồn Java có một danh sách tuyệt vời gồm Open Source Web Testing Tools in Java.

2

Tôi tìm thấy kỹ thuật được mô tả trong The Humble Dialog Box rất hiệu quả trong việc kiểm tra lái xe GUI của tôi. Về cơ bản, mỗi lớp GUI được chia thành 3 lớp và một giao diện: (1) bộ điều khiển logic, xác định logic của GUI hoạt động như thế nào (thay đổi nhãn, được kích hoạt?) Hoàn toàn có thể kiểm tra và không phụ thuộc vào thực tế GUI, nhưng không phụ thuộc vào (2) giao diện xem, trong đó xác định cách bộ điều khiển logic sẽ tương tác với GUI sau này. (3) Lớp GUI thực tế, là một trình bao bọc rất mỏng với thư viện GUI thực. Cuối cùng, (4) chế độ xem giả, mà bạn sử dụng để thử nghiệm để chứng minh rằng bộ điều khiển logic của bạn sẽ thao tác GUI một cách chính xác.

Dường như lúc đầu có vẻ như rất nhiều công việc, nhưng tôi khuyến khích bạn thử nó. Tôi đã có rất ít vấn đề với GUI của tôi kể từ khi tôi bắt đầu làm điều này. Các công việc trước mặt tiết kiệm nhức đầu lớn (và thời gian) sau đó.

+0

+1 cho hộp thoại khiêm tốn! –

1

Test Driven Development: By Example, by Kent Beck Hướng dẫn thực tế là công việc chính.

Khác Tôi muốn đề nghị là:

Các RSpec Sách đại diện cho thế hệ kế tiếp - Behavior Driven Development . Nếu bạn quan tâm đến TDD, bạn cũng sẽ quan tâm đến BDD.

Nhưng quan trọng hơn việc đọc là thực hành. Hãy thử tự mình làm, và xem bạn có thể tìm hoặc tạo một nhóm địa phương thực hiện Code Katas bằng TDD hay không.

+0

Tôi sẽ xem xét những cuốn sách này, cảm ơn vì đã chia sẻ chúng! – onigunn

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