Tôi có hộp nơi tôi chạy thử nghiệm. Có vẻ như Jenkins sẽ thực hiện và thực hiện các lệnh được mô tả trong công việc cụ thể đang chạy.
Ở đây tôi đang cố gắng chạy thử nghiệm Selenium WebSearch của mình, nhưng nó cho tôi biết rằng tôi có lỗi khi khởi chạy firefox. Ý tưởng cuối cùng là chạy hoàn toàn các webtests trên hộp này và cũng chụp một số ảnh chụp màn hình về các lỗi.
Tôi đang sử dụng selenium-java-2.25.jar, firefox 10, hệ điều hành linux.
Điều thú vị là tôi có thể tự nhập ssh vào hộp, sao chép tạm thời cookie ma thuật từ một người dùng khác trên hộp (để lấy đường hầm X), thực hiện export DISPLAY=mydisplay:1.0
, sau đó khởi chạy các bài kiểm tra selen của tôi bằng kiến. Và điều này sẽ mang đến firefox và các bài kiểm tra tốt.
Có nhiều chủ đề khác nhau ở đây dường như có cùng một vấn đề, và tôi nghĩ rằng tôi đã thử hầu hết chúng. Đây là những gì tôi đã làm:
Khởi động lại hộp, đăng nhập lại với VNC.
Đặt một tập lệnh bash trong Jenkins để chạy trước khi chạy các bài kiểm tra selen. Kịch bản bash về cơ bản chỉ làm một
export DISPLAY=mydisplay:1.0
. Nó cũng thực thixclock
. Điều này hoạt động như tôi có thể thấy xclock đang được hiển thị trong VNC.iptables đã bị tắt
firefox được đặt chính xác trong / usr / bin / firefox
sshd_config hiển thị có X11Forwarding là đúng.
Việc hạ cấp firefox đã giúp một số người, nhưng tôi không muốn làm điều này. Webdo vẫn nên hỗ trợ FF 10.
Tuy nhiên, không có điều nào ở trên giải quyết được vấn đề.
Dường như cổng 7055 trên localhost thậm chí còn tồn tại:
netstat -an | grep 7055
- Không có gì in
Đây là những gì / etc / hosts của tôi nói:
1 127.0.0.1 localhost.localdomain localhost
2 ::1 localhost6.localdomain6 localhost6
Có lẽ nó có liên quan đến localhost: 7055 không tồn tại? Tôi không chắc chắn nơi để đi từ đây. Tuy nhiên, tại sao đầu ra lỗi cho biết nó đang tìm kiếm display: :0.0
khi tôi đã chỉ định mydisplay:1.0
?
Và cuối cùng là đầu ra lỗi tôi nhận được:
[testng] org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Error: cannot open display: :0.0
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Xlib: connection to ":0.0" refused by server
[testng] Xlib: No protocol specified
[testng]
[testng] Error: cannot open display: :0.0
[testng]
[testng] at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:109)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:245)
[testng] at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:109)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:185)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:178)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:174)
[testng] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92)
[testng] at com.test.webtest.browser.BrowserFactory.createBrowser(BrowserFactory.java:24)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[testng] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
[testng] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[testng] at java.lang.reflect.Method.invoke(Method.java:601)