2013-03-08 31 views
9

Tôi muốn tích hợp JSTestDriver với jenkins-CI. vấn đề là máy chủ xây dựng không có màn hình. có cách nào để chạy trình duyệt không đầu không?Làm cách nào để chạy các trình duyệt (chrome, IE và firefox) ở chế độ không đầu?

Cảm ơn

+0

không chú ý hoặc không có nghĩa là gì? – gdoron

+6

Kiểm tra [Phantom JS] (http://phantomjs.org/). – elclanrs

+0

+1 Tôi không chắc chắn nếu điều này giúp với câu trả lời, nhưng nó giúp tôi THX –

Trả lời

7

Nếu máy chủ của bạn là Linux, như đã đề cập, bạn không thể chạy IE. Nhưng bạn có thể chạy các trình duyệt khác như Firefox. Bí quyết là cài đặt XVFB trên máy chủ Jenkins của bạn, cho phép Firefox chạy không đầu. Tôi đã sử dụng thiết lập này và nó hoạt động tốt.

http://www.alittlemadness.com/2008/03/05/running-selenium-headless/

1

Google Chrome bây giờ (Chrome 59 for Mac and Linux, Chrome 60 for Windows) có một chế độ không đầu built-in. Nó hoạt động đa nền tảng, và không yêu cầu bất kỳ rối tung xung quanh với các thiết bị hiển thị, máy ảo, hoặc bất cứ điều gì như thế. Bạn có thể tìm a great Getting Started article by Eric Bidelman here, nhưng đây là những điểm mấu chốt nhất:

Bạn phải khởi động nhị phân Chrome (trên hệ điều hành MacOS nó nằm bên trong Google Chrome.app bó trong thư mục Contents/MacOS) sử dụng --headless cờ. Đó là hiện tại cũng cần thiết để thêm cờ --disable-gpu, vì tăng tốc GPU không hoạt động chính xác ở chế độ không đầu.

chrome --headless --disable-gpu [url/path/flags...] 

Như với tiêu chuẩn phi headless Chrome, Á hậu thử nghiệm của bạn có thể giao tiếp với Chrome sử dụng giao diện công cụ dev nếu nó được kích hoạt bởi các --remote-debugging-port=[SOME_PORT] cờ. Tuy nhiên, nếu bạn chỉ muốn tự mình kiểm tra nhanh, bạn có thể sử dụng các cờ --screenshot hoặc --dump-dom để kiểm tra nội dung của trang sau khi tải.

chrome --headless --disable-gpu --dump-dom https://stackoverflow.com/ 
0

Firefox, từ phiên bản 55 trên Linux và phiên bản 56 trên Windows và macOS, now has a builtin headless mode.

Tại thời điểm này (tháng 9 năm 2017), tôi đang sử dụng phân phối dựa trên GNU/Linux, với Firefox 55 và lệnh giao diện điều khiển hoạt động tốt: firefox --headless http://www.wikipedia.org, điều này không hữu ích nhưng nó hoạt động vì tôi thấy rằng quá trình hệ điều hành tương ứng cho Firefox tiếp tục chạy.

Tính năng này sẽ dần dần cải thiện theo thời gian, do đó, hãy đọc official developers documentation được khuyến nghị, đặc biệt cho những người quan tâm đến thử nghiệm tự động và các sáng kiến ​​tích hợp liên tục.

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