Tôi đang sử dụng Selenium với hệ thống CI để tự động kiểm tra các ứng dụng khác nhau của mình, một trong số đó là biểu mẫu web có bản sao câu trả lời của chúng tôi (dưới dạng PDF được tạo động). Bài kiểm tra là để khẳng định tệp PDF có thể tải xuống chứa các câu trả lời đúng (các câu trả lời được đưa ra trên biểu mẫu web). Vấn đề của tôi là cố gắng xử lý hộp thoại tải xuống để truy xuất tệp PDF (khẳng định nội dung của tệp PDF chính xác nằm ngoài phạm vi của câu hỏi này).Tải xuống Hộp thoại Tệp
Tôi đã dành thời gian xem xét cách xử lý, một vài điều tôi đã tìm thấy có liên quan là AutoIT, thay đổi vị trí tải xuống mặc định & tự động tải xuống tệp trình duyệt và chỉ asserting the link works without downloading the file. Thật không may, tình hình của tôi loại trừ tất cả ba khả năng.
- Tôi đang sử dụng nhiều trình duyệt khác nhau (loại bỏ tải xuống tự động vì một số trình duyệt không hỗ trợ tính năng này).
- Tôi đang sử dụng nhiều nền tảng khác nhau (loại bỏ AutoIT, một ứng dụng chỉ dành cho Windows).
- Nội dung trong PDF được tạo động dựa trên tương tác trước đó với ứng dụng, kiểm tra là để xác định xem nội dung được tạo có khớp với giá trị dự kiến hay không, vì vậy chỉ cần kiểm tra xem liên kết có tồn tại không đủ không.
Vì hộp thoại tải xuống được trình bày bởi hệ điều hành, tôi không chắc liệu có thể sử dụng Selenium cho những gì tôi dự định hay không, tuy nhiên tôi nghĩ tôi sẽ hỏi trước xem có ai biết giải pháp nào không sử dụng Selenium, hoặc thay vào đó có thể đề nghị một số phương tiện thử nghiệm được chấp nhận khác?
Nếu câu trả lời của luksch không đủ cho bạn, tôi có một ý tưởng khác. Nếu bạn có thể đánh hơi và đăng các tham số Http/Session bạn sẽ có bằng một tải xuống tương tác bình thường? Bạn có thể kiểm tra liên kết mà không cần tải xuống nếu bạn xây dựng các gói và quản lý phiên của bạn (nghĩa là cookie/cache - bất kỳ nơi nào tương tác trước đó được lưu). –
Làm cách nào để mở tệp PDF trong chính trình duyệt? – Manu