Vòng đời của một thử nghiệm được thực hiện bằng Trade Federation bao gồm bốn giai đoạn riêng biệt, được thiết kế xung quanh các giao diện được xác định chính thức.
Giao diện xác định
- Nhà cung cấp bản dựng : Cung cấp bản dựng để kiểm tra, tải xuống các tệp thích hợp nếu cần.
- Trình chuẩn bị mục tiêu : Chuẩn bị môi trường thử nghiệm, có thể bao gồm cài đặt phần mềm và cấu hình thiết bị.
- Kiểm tra : Thực hiện (các) kiểm tra và thu thập kết quả kiểm tra. Đây có thể là bất kỳ Bài kiểm tra JUnit nào, mặc dù giao diện IRemoteTest của chúng tôi được thiết kế đặc biệt để hoạt động tốt trong môi trường Liên đoàn Thương mại.
- Test Invocation Listener (báo cáo kết quả) : Nghe các kết quả thử nghiệm, thường nhằm mục đích chuyển tiếp các kết quả thử nghiệm đến một kho lưu trữ hoặc hiển thị chúng cho Trình chạy thử nghiệm.
Thực thể thử nghiệm cơ bản trong TF là một Cấu hình (config). Cấu hình là một tệp XML khai báo các thành phần vòng đời của một bài kiểm tra.
Việc tách vòng đời của thử nghiệm này nhằm cho phép sử dụng lại. Sử dụng thiết kế này, Nhà phát triển có thể tạo Kiểm tra một lần và sau đó Người tích hợp có thể tạo các Cấu hình khác nhau để chạy Kiểm tra đó trong các môi trường khác nhau. Ví dụ: họ có thể tạo một Cấu hình sẽ chạy thử nghiệm trên một máy cục bộ và kết xuất kết quả vào stdout. Sau đó, họ có thể tạo Cấu hình thứ hai sẽ thực hiện cùng một bài kiểm tra đó, nhưng sử dụng một Trình nghe lời mời kiểm tra khác để lưu trữ kết quả kiểm tra trong cơ sở dữ liệu. Cấu hình thứ ba có thể được thiết kế để chạy thử nghiệm liên tục từ một phòng thí nghiệm thử nghiệm ở đâu đó.
Ở đây, thật tiện lợi khi lưu ý rằng một Cấu hình cùng với các đối số dòng lệnh của nó (như được cung cấp bởi Test Runner) được gọi là Lệnh . Khi TF ghép một Lệnh với một ITestDevice
và thực thi nó, đối tượng tiếp theo được gọi là Lời mời . Nói tóm lại, một Lời mời bao gồm một quá trình thực thi thử nghiệm TF hoàn chỉnh, trong toàn bộ vòng đời của nó.
Các thành phần cấu hình bổ sung
- Device Recovery : cơ chế khôi phục giao tiếp của thiết bị nếu bị mất.
- Logger : thu thập dữ liệu ghi nhật ký đã trao đổi.
Đầu ra giai đoạn và lỗi
Mỗi giai đoạn của một lời gọi thực hiện tuần tự và có một mục tiêu cụ thể. Phần này mô tả các kết quả đầu ra thông thường và lỗi của từng giai đoạn.
Xây dựng nhà cung cấp
Giai đoạn này tạo và xuất một đối tượng IBuildInfo
có chứa tất cả các tham chiếu tệp cần thiết để thiết lập và chạy thử nghiệm.
Lỗi phổ biến nhất ở giai đoạn này là không thể tải xuống hoặc tìm thấy các tệp được yêu cầu.
Lỗi ở giai đoạn này dẫn đến việc báo cáo trực tiếp lỗi và không có thử nghiệm nào được chạy.
Chuẩn bị mục tiêu
Giai đoạn này thiết lập các trạng thái cần thiết cho mục tiêu được kiểm tra. Giai đoạn này có thể thay đổi thiết bị hoặc thiết lập máy chủ lưu trữ khi cần thiết cho lệnh gọi kiểm tra nhất định.
Các lỗi phổ biến ở giai đoạn này thường liên quan đến việc không thiết lập được thiết bị ở trạng thái nhất định (ví dụ: không thể nhấp nháy) và không tìm thấy các tệp cần thiết để thiết lập.
Lỗi ở giai đoạn này dẫn đến việc chạy mục tiêu dọn dẹp, báo cáo lỗi và không có thử nghiệm nào được chạy.
Kiểm tra
Giai đoạn này chạy các thử nghiệm được yêu cầu trên mục tiêu đã chuẩn bị trước đó và báo cáo tất cả các kết quả thực hiện thử nghiệm.
Các lỗi phổ biến ở giai đoạn này thường liên quan đến mục tiêu đang kiểm tra không khả dụng hoặc một số lỗi gây ra việc thực thi từng phần các kiểm tra. Những lỗi này là các vấn đề về cơ sở hạ tầng ảnh hưởng đến chính việc thực thi thử nghiệm chứ không phải là lỗi của một trường hợp thử nghiệm duy nhất.
Lỗi ở giai đoạn này dẫn đến việc dừng thực thi thử nghiệm, mục tiêu dọn dẹp đang chạy, báo cáo lỗi và nhận được một phần kết quả.
Báo cáo kết quả
Giai đoạn này báo cáo kết quả và lỗi cho các dịch vụ đã định cấu hình (ví dụ: máy chủ và tệp cục bộ).
Mặc dù các báo cáo kết quả riêng lẻ có thể có lỗi, chúng được cách ly với nhau (một báo cáo viên không nhìn thấy lỗi từ một báo cáo viên khác). Những lỗi này chỉ ảnh hưởng đến việc báo cáo kết quả của riêng một phóng viên và các lỗi này có thể được xem trong nhật ký.