2010-05-24 30 views
6

Chúng tôi có một cơ sở mã đáng kể với phạm vi kiểm tra tương đối cao cho các trang/biểu mẫu, tất cả thông qua vanilla POST/GET.Selenium vs các bài kiểm tra dựa trên POST/GET của trường cũ

Bây giờ, chúng ta thấy mình di chuyển nhiều hơn vào không gian 'ajaxy' và không thể thử nghiệm với các kịch bản hoàn thành GET/POST như đăng ký người dùng hoặc tạo mục, vì chúng liên quan đến nhiều cuộc gọi JavaScript/Ajax .

Trong khi những thứ như vậy là những ứng cử viên có khả năng nhất để thử nghiệm với Selenium, tôi tự hỏi chúng ta có nên áp dụng thử nghiệm Selenium trên bảng, để lại các bài kiểm tra POST/GET cũ của trường cũ?

Ưu điểm của việc áp dụng Selenium có vẻ quá tốt - khả năng chạy khá nhiều thử nghiệm GET/POST giống nhau nhưng trên phạm vi trình duyệt.

Hoặc tôi có thiếu thứ gì đó trong việc theo đuổi những thứ tuyệt vời và hợp thời trang và bỏ qua các thử nghiệm POST/GET đã được chứng minh cũ không?

Trả lời

6

Có những ưu điểm và nhược điểm của cả hai cách tiếp cận, vì vậy đề xuất của tôi sẽ là sử dụng cả hai.

Selenium khởi chạy trình duyệt thực và mô phỏng người dùng tương tác với ứng dụng web của bạn, điều này có thể tuyệt vời nếu bạn đang thử nghiệm các tính năng của Ajax. Nó có thể xác minh rằng các yếu tố có thể nhìn thấy và tương tác với chúng cũng giống như người dùng. Một tính năng sát thủ khác là khả năng chụp ảnh màn hình thông qua Selenium, có thể cực kỳ hữu ích khi điều tra lỗi.

Thật không may khi khởi chạy trình duyệt và điều hướng đến trang/trạng thái cụ thể trong ứng dụng có thể chậm và bạn cần nhiều phần cứng nếu muốn kiểm tra người dùng đồng thời (thử tải) với Selenium. Nếu bạn chỉ muốn kiểm tra xem máy chủ của bạn có phản hồi bằng HTTP 200 cho một số hành động nhất định hay tải thử nghiệm ứng dụng của bạn hay phản hồi chứa các giá trị nhất định thì POST/GET cơ bản sẽ phù hợp hơn.

Nếu bạn quyết định sử dụng phương pháp Selenium thuần túy để thử nghiệm, tôi khuyên bạn nên xem xét sử dụng Lưới Selenium hoặc dịch vụ dựa trên đám mây, khi chạy nhiều thử nghiệm thông qua Selenium có thể tốn khá nhiều thời gian.

4

Tôi nghĩ bạn chắc chắn nên sử dụng các bài kiểm tra Selenium và POST/GET (Unit), vì mục đích kiểm thử đơn vị của bạn là kiểm tra chức năng của một đoạn mã cụ thể nhưng Selenium đang thực hiện thử nghiệm tích hợp trên ứng dụng web của bạn .

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