Trong khoảng một năm rưỡi, tôi đã làm việc với SilkTest, một công cụ tự động hóa GUI, cho cả ứng dụng web và máy tính để bàn. Nó mô phỏng đầu vào chuột và bàn phím, mà cuối cùng mô phỏng hành vi người dùng cuối. Tuy nhiên, tôi thấy rằng nó là một chút flaky; Các phương thức Button.Click() hoặc DialogBox.Close() gọi là hoạt động tốt gấp 9 lần liên tiếp dường như thất bại trong cuộc gọi thứ 10, chỉ để quay lại làm việc vào ngày 11. Thông thường, tôi sẽ chỉ viết một câu hỏi với SilkTest (hoặc ứng dụng dưới Test, hoặc hệ điều hành, hoặc những gì có bạn) nhưng sau đó tôi thấy rằng có những vấn đề tương tự với các công cụ tự động hóa GUI khác như Selenium:Tại sao các công cụ GUI tự động lại quá mỏng manh?
Selenium Click() fails with Anchor Elements
Selenium Click() fails clicking button object
tôi biết rằng cho các ứng dụng máy tính để bàn, mỗi giao diện điều khiển/hộp thoại có một yếu tố thẻ liên kết với nó (ít nhất là trong GUI dựa trên Windows) và cho các trang web có một hệ thống phân cấp mô hình đối tượng lĩnh vực yếu tố trang. Tôi đoán là những công cụ này đôi khi chạy vào các vấn đề điều hướng các cấu trúc phân cấp này và tìm các phần tử và điều khiển duy nhất. Nhưng những gì đang xảy ra ở đây? SilkTest là một gói phần mềm thương mại tương đối cũ, trong khi selen là tương đối mới, nguồn mở và không ngừng phát triển. Thực tế là cả hai đều có thể có vấn đề tương tự đặt ra một vài lá cờ với tôi.
Ngoài ra, đây có phải là trường hợp với các công cụ kiểm tra GUI khác không? Hay tôi chỉ có một trải nghiệm hơi khác thường?
Tôi đồng ý rằng có nhiều vấn đề khác nhau: 1) thực hiện kiểm tra ổn định (luôn kiểm tra các điều khiển có thể nhận đầu vào - một số hoạt động cũng mất tùy ý) 2) giới hạn công cụ - nơi không thể thực hiện được. Ngoài ra nhiều công cụ cố gắng để có một số logic nội bộ thông minh xung quanh 1) và cho 2) bạn chỉ cần có để mua sắm xung quanh, Silk Test không phải là tốt nhất ở đó. –