10

Vì vậy, tôi có một ứng dụng mà tôi thừa hưởng và tôi muốn xây dựng một bộ thử nghiệm tự động xung quanh nó. Ứng dụng này không được thiết kế với khả năng kiểm tra trong tâm trí và mã là "quả bóng bùn lớn". Kế hoạch của tôi là sử dụng khung kiểm tra Tự động hóa giao diện người dùng và tạo một bộ kiểm tra ở cấp UI cho đến khi tôi có đủ vùng phủ sóng để cho phép tôi bắt đầu tái cấu trúc với sự tự tin và giới thiệu một số đường nối vào mã để cải thiện khả năng thử nghiệm và thiết kế.Khung kiểm tra giao diện người dùng + Tích hợp liên tục?

Đó là một ứng dụng Net WinForms, và hai khung Tôi nhận thức được là:

NUnitForms

Project White

Từ những gì tôi đã đọc cả hai khuôn khổ pose các vấn đề khi cố gắng chạy như một phần của bản dựng tự động (Tích hợp liên tục) do thực tế là hầu hết các sản phẩm CI chạy dưới dạng Dịch vụ Windows và nếu giao diện người dùng sử dụng các hộp thoại phương thức, ứng dụng sẽ chết một cách khủng khiếp tử vong. Tôi đang sử dụng CruiseControl.Net như công cụ CI của tôi.

Có ai có bất kỳ đề xuất nào để giải quyết vấn đề này không? Một khuôn khổ thay thế để sử dụng có thể làm cho tình hình tốt hơn?

Cảm ơn,

Dylan

Trả lời

2

Tôi không thử nó, nhưng đó là UI Automation Framework từ Microsoft:

+2

Tôi nghĩ đây là những gì White được xây dựng trên đó. http://white.codeplex.com/Wiki/View.aspx?title=Layers –

3

Bạn thực sự có thể chạy kiểm soát hành trình thông qua các ứng dụng giao diện điều khiển để nó có thể có quyền truy cập máy tính để bàn tương tác. Nó sẽ không phục hồi tự động nếu máy chủ được khởi động lại hoặc nó bị treo, nhưng ít nhất bạn có thể làm điều đó.

Điều đó nói rằng, cách tiếp cận mà hầu hết mọi người thực hiện với kiểm tra giao diện người dùng tự động (winforms, wpf hoặc web) là chạy tất cả các kiểm tra không tương tác thông qua máy chủ xây dựng. Một khi các kiểm tra đó vượt qua, sau đó chúng triển khai ứng dụng đến môi trường thử nghiệm và kích hoạt chạy thử nghiệm theo cách thủ công đối với phiên bản mã mới được tạo.

Điều này mang lại cho mọi người cơ hội đặt lại môi trường thử nghiệm (quan trọng để kiểm tra giao diện người dùng) cũng như kiểm tra xem phiên bản mới của ứng dụng có được xây dựng chính xác không và tất cả các bài kiểm tra đơn vị đã trôi qua. Sau khi tất cả, không có điểm chạy các bài kiểm tra giao diện người dùng nếu bạn biết các bài kiểm tra đơn vị đã giảm hơn. :-)

+0

Đúng, nhưng trong trường hợp của tôi, tôi không có bất kỳ thử nghiệm nào khác. Và bất kỳ bộ thử nghiệm nào tôi tạo ra chắc chắn là tôi muốn nó chạy trên cơ sở tự động, nếu không chúng tôi sẽ có nguy cơ bị kiểm tra "thối" và trở nên vô dụng khi họ phá vỡ và không ai nhìn vào chúng ... Thông tin tốt về ứng dụng giao diện điều khiển cc.net tho –

1

Chúng tôi chạy thử nghiệm chấp nhận tích hợp liên tục trong chế độ bảng điều khiển thay vì dưới dạng dịch vụ Windows trong PC ảo đã đăng nhập. Điều đó làm việc cho chúng tôi.

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