2012-03-20 17 views
6

Tôi đã chuyển từ SeleniumRC sang WebDriver trong gần hai năm. Nhưng tôi phải nói rằng tôi đã không cảm thấy có bất kỳ lợi thế rõ ràng cho webdriver trên rc. Bây giờ tôi có hơn 200 trường hợp thử nghiệm với trình điều khiển C# trên trang web. Nhưng khi tôi chạy chúng triệt để để kiểm tra hồi quy, tôi thường nhận được 150 thông qua và 50 + thất bại/bị lỗi. Sau khi chạy các trường hợp thử nghiệm không thành công lần thứ hai, nhiều trường hợp đã trôi qua, chỉ một vài trong số chúng được chứng minh là có vấn đề với mã thử nghiệm. Như tôi có thể thấy, đôi khi WebDriver thực sự hoạt động chậm, trong khi tôi chưa bao giờ gặp tình huống như vậy khi tôi đang sử dụng SeleniumRC trước đây. Kết quả là, tôi bắt đầu nghi ngờ sự cần thiết phải chuyển từ rc sang webdriver, bởi vì phải mất nhiều thời gian hơn để tôi xác minh lỗi và thất bại so với trước đây.Selenium so với WebDriver, có lợi thế rõ ràng nào không?

Vì vậy, câu hỏi của tôi là, có lợi thế nào cho webdriver trên rc để làm cho nó đáng để chuyển từ rc sang webdriver? Nếu vậy, bạn có thể vui lòng cho tôi biết? Ngoài ra, hãy cho tôi biết về những bất lợi.

+0

Vì vậy, có bất kỳ điều gì mà seleniumRC có thể thực hiện trong khi trình điều khiển web không thể? Ngoài ra, mặt khác, có bất cứ điều gì mà webdriver có thể làm trong khi rc không thể? –

+1

Tôi đã có đủ với WebDriver, tôi sẽ thay đổi nó trở lại của tôi selenium babe rc, không có vấn đề chi phí. –

+1

Vâng tôi phải downvote những gì tôi đã nhận xét 2 năm trước đây.Tôi đã cố gắng chuyển trở lại selenium rc nhưng không lâu sau đó tôi nhận ra nó là mã nghèo của tôi mà nên được đổ lỗi, không phải webdriver. Tôi đã sửa tất cả các vấn đề về mã và trình quản trị web của tôi đã hoạt động như một sự quyến rũ trong những năm này đối với tôi. Cũng giống như @Slanec nói, có lẽ webdriver không phải là quá tốt 2 năm trước, nhưng nó là nhận được tốt hơn. Bây giờ tôi phải nói rằng nó là tốt hơn nhiều, không chỉ webdriver, mà còn kỹ năng mã hóa của riêng tôi. –

Trả lời

3

@ocary nói gì.

Tuy nhiên, WebDriver mới và mạnh mẽ hơn cũng có một số hạn chế. Bởi vì nó là một công việc trong tiến trình, đó là hành vi giữa các phiên bản khác nhau thay đổi đôi chút theo thời gian. Ngoài ra, không phải gần như tất cả các tính năng dự định đã được triển khai, sẽ mất thêm thời gian để nó ổn định, không bị lỗi và phát triển đầy đủ. Ví dụ: SafariDriver vừa hạ cánh, các điều khiển cửa sổ bị bỏ qua, bạn không thể tải tệp xuống một cách thuận tiện, v.v.

Nhưng sự phát triển lành mạnh trên WebDriver tốt hơn so với phát triển không tồn tại ngày nay trên Selenium 1 (Nó chỉ sẽ không nhận được bất kỳ tốt hơn.), phải không?

+1

Cảm ơn bạn đã trả lời, Petr. Tôi hiểu. Thay đổi thường xuyên có nghĩa là không ổn định và điều này không lý tưởng cho dự án tự động hóa của tôi. Nhóm của tôi đang chạy chu kỳ phát hành hai tuần, vì vậy tôi phải đảm bảo sự ổn định của dự án để chạy kiểm tra hồi quy trước khi phát hành. Tôi không muốn mạo hiểm nó cho tính không ổn định của trình duyệt web. Ngay cả khi selen 1 ngừng tăng trưởng thì nó vẫn ổn định. Có lẽ tôi sẽ thay đổi dự án tự động hóa của mình để sử dụng WebDriver vào một ngày nào đó, nhưng không phải bây giờ. –

+2

Gần 4 năm nay đã trôi qua kể từ khi nó được viết ... –

12

RC Selenium tiêm Javascript vào trang để thúc đẩy tương tác. Trình quản lý web tương tác trực tiếp với trình duyệt. Tiêm Javascript bổ sung có những bất lợi, với trang web Selenium HQ cho biết nó khá tốt.

Trong khi Selen là một công cụ khổng lồ, nó không phải là không có nhược điểm của nó. Do công cụ tự động hóa dựa trên Javascript của nó và các hạn chế an ninh trình duyệt áp dụng cho Javascript, những thứ khác nhau đã trở thành không thể thực hiện được. Để làm mọi thứ “tồi tệ nhất”, các ứng dụng web ngày càng trở nên mạnh mẽ theo thời gian, sử dụng tất cả các loại tính năng đặc biệt trình duyệt mới cung cấp và làm cho các hạn chế này ngày càng đau đớn hơn.

http://seleniumhq.org/docs/01_introducing_selenium.html#selenium-history

Một cách khác để suy nghĩ về nó là thử nghiệm một trang đã có nhiều JS nói thêm, bạn không thực sự kiểm tra các trang gốc; bạn đang thử nghiệm một trang đã sửa đổi.

+3

Cảm ơn bạn đã trả lời, OCary! Vì vậy, "thử nghiệm trang gốc" là một trong những lợi thế của webdriver trên rc phải không? Đó là một lý do đủ tốt để tôi chuyển sang webdriver, nhưng bạn có thể cho tôi biết bất kỳ khiếm khuyết nào của nó không? –

2

Từ kinh nghiệm của tôi Selenium RC là khung kiểm tra web ổn định và mạnh mẽ nhất mà tôi đã sử dụng. Gần đây tôi đã bắt đầu đánh giá WebDriver (aka Selenium 2) vì lý do mà mọi người nói đó là tương lai của Selenium. Cho đến nay tôi không ấn tượng. Những thứ đơn giản (như nhấp vào một nút) không hoạt động liên tục trên các trình duyệt khác nhau và yêu cầu cách giải quyết khác nhau. Tôi nhận thấy rằng có những hạn chế trong những gì bạn có thể làm với JavaScript, nhưng tôi không muốn hy sinh sự ổn định của các bài kiểm tra của tôi để vượt qua những hạn chế đó.

+4

Sau khi làm việc khoảng một tháng với WebDriver, tôi bắt đầu thích nó. Nó có những nhược điểm và lỗi của nó, bạn phải tìm cách giải quyết, nhưng điều này cũng đúng đối với Selenium RC. – Vlad

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