2011-12-30 41 views
5

Thiết lập hiện tại của tôi là tôi có một selenium RC đang chạy như một trung tâm trên máy tính Windows (cho phép giả định tên máy là machine.name.com). Tôi đã sử dụng lệnh sau để bắt đầu nóSelenium Grid2 - Nút từ xa không kết nối với HUB

java -jar selenium-server2.15.jar -role hub -port 5555 

Tôi có một nút selen chạy trên cùng một máy được đăng ký đến nút ở trên. Tôi đã sử dụng lệnh sau để khởi động nút

java -jar selenium-server2.15.jar -role node -port 5554 -hub http://machine.name.com:5555/grid/register 

Nút này được đăng ký thành công, và tôi có thể chạy thử nghiệm của nút này là tốt.

Bây giờ tôi có một máy khác (một LINUX - cho phép giả định địa chỉ IP của máy này là 10.123.123.123), hình thức mà tôi muốn chạy một nút khác đã đăng ký với trung tâm trên các cửa sổ (machine.name.com) tại cổng 5555. Tôi đã sử dụng lệnh sau để bắt đầu nút.

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX,maxInstances=5 

Vấn đề là nút này không được HUB đăng ký.

Tôi biết thực tế là Hub và Nút đã phát hiện lẫn nhau khi tôi nhấn http://machine.name.com:5555/console trên trình duyệt cả hai nút được hiển thị. Nhưng máy Linux có một thông báo lỗi cùng với nó "lắng nghe trên http://10.123.123.123:5572 (không thể đạt được tại thời điểm này)"

và không kiểm tra selen có thể chạy ra khỏi nút đó.

Tôi đọc trên các nhóm selenium HERE rằng nút từ xa cũng phải xác định cặp giá trị khóa -hubHost. Vì vậy, tôi cũng đã thử lệnh sau, không thành công

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX, maxInstances=5 -hubHost "machine.name.com" 

Nhưng điều này cũng không đăng ký nút.

Xin lưu ý rằng không có lỗi nào được ném trên bảng điều khiển trên máy linux. tất cả những gì được hiển thị là -

13:20:55.891 INFO - starting auto register thread. Will try to register every 5000ms 
13:20:55.891 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:23:06.860 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:25:17.678 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:27:28.496 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 
13:29:39.311 INFO - Registering the node to hub :http://machine.name.com:5555/grid/register 

Không có lỗi nào được ném trên bàn điều khiển đang chạy Hub trên máy cửa sổ.

Tường lửa được đặt đúng cách, cũng như được kiểm tra bằng telneting.

Với tất cả những điều này, tôi chắc chắn tôi đã làm điều gì đó về cơ bản sai, ai đó có thể vui lòng HELP ME !!!!!

+0

Bạn đã bao giờ thử chạy cùng một lệnh được sử dụng trong các cửa sổ chưa? Nếu không có trình duyệt hoặc nền tảng –

Trả lời

10

Thanks guys cho giúp đỡ, nhưng vấn đề là vì địa chỉ IP của máy chủ nút của tôi không phải là định tuyến. Vì vậy, tôi đã tạo một mục lưu trữ (mục nhập DNS) cho máy chủ nút. và thêm một tham số -host

nên lệnh bây giờ trông giống như

java -jar selenium-server2.15.jar -role node -port 5572 -hub http://machine.name.com:5555/grid/register -browser browserName=chrome,platform=LINUX, maxInstances=5 -hubHost "machine.name.com" -host "nodemachine.name.com" 

nhờ một lần nữa tất cả mọi người.

+0

Tôi đã phải đối mặt với cùng một vấn đề với máy Mac nhưng thông số -host giải quyết vấn đề của tôi. Cảm ơn bạn thân – bugCracker

+0

Hi Amey, tôi có thể sử dụng địa chỉ ip thay vì 'machine.name.com' không? nếu có, giá trị cho ** - hubHost ** và ** - máy chủ lưu trữ là gì **. Tôi không biết tên máy của mình. – Rameshwar

+0

Tôi đoán bạn có thể bắt đầu nút bằng cách bỏ qua hai tùy chọn đó hoàn toàn. – Amey

0

Đối với tôi, có vẻ như bạn đang thực hiện chính xác. Bạn đã thử cờ -debug khi khởi chạy nút chưa? Có lẽ bạn sẽ tìm thấy một cái gì đó ở đó.

Và có thể bạn muốn browserName = googlechrome thay vì browserName = chrome

+0

Cảm ơn tôi đã tìm ra, nó vì Mạng cục bộ tôi được đóng gói. Tôi đã cung cấp lệnh máy chủ mà tôi đã nhập để làm cho nó hoạt động – Amey

+0

tại sao bạn lại nói về tên trình duyệt? Tất cả mọi thứ tôi đã đọc nói rằng nó phải là 'chrome' –

0

Tôi gặp phải sự cố tương tự khi lưu trữ cả nút và trung tâm trên máy cục bộ trong khi tôi ở trên VPN. Tôi đã có thể để có được xung quanh vấn đề này bằng cách tung ra cả hai trung tâm và các nút với các thông số -host và -Port

Đối tung ra trung tâm lệnh trông giống như sau

java -jar selenium-server-standalone-2.32.0.jar -role hub -host <hubipaddress> -port 4444 

Đối với Phát động nút các lệnh trông giống như sau

java -jar selenium-server-standalone-2.32.0.jar -role node -host <nodeipaddress> -port 5555 -hub http://<hubipaddress>:4444/grid/register 

Trong trường hợp của tôi cả hubipaddress và nodeipaddress đều giống nhau và họ là những địa chỉ ip giao cho tôi qua VPN

0

NẾU bạn đang sử dụng một máy ảo, bạn cần kiểm tra entropy của mình. Selenium sử dụng urandom và nếu bạn không có đủ entropy, nó sẽ mất 1hour + (nếu có) cho nút đó xuất hiện.

On CentOS (và distro khác) cài đặt:

yum install haveged 
chkconfig haveged on 
systemctl start haveged 

Khởi động lại cả hai dịch vụ và Selenium nên khởi động đúng cách.

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