2016-12-09 40 views
1

我在量角器一個初學者。我做了運行量角器所需的設備。在嘗試運行量角器文檔中提到的示例腳本時,出現ETIMEDOUT錯誤。 url指向127.0.0.1:4444。也不能手動訪問相同的網址。但嘗試http://localhost:4444/wd/hub時,頁面可以正常打開。我不知道爲什麼conf.js嘗試訪問127.0.0.1:4444,即使我將'seleniumAddress'參數設置爲'http://localhost:4444/wd/hub'。請幫我人來解決這個問題獲取ETIMEDOUT錯誤時運行量角器conf.js

exports.config = { 
 
    seleniumAddress: 'http://localhost:4444/wd/hub', 
 
    specs: ['todo-spec.js'] 
 
};

describe('angularjs homepage todo list', function() { 
 
    it('should add a todo', function() { 
 
    browser.get('https://angularjs.org'); 
 

 
    element(by.model('todoList.todoText')).sendKeys('write first protractor test'); 
 
    element(by.css('[value="add"]')).click(); 
 

 
    var todoList = element.all(by.repeater('todo in todoList.todos')); 
 
    expect(todoList.count()).toEqual(3); 
 
    expect(todoList.get(2).getText()).toEqual('write first protractor test'); 
 

 
    // You wrote your first test, cross it off the list 
 
    todoList.get(2).element(by.css('input')).click(); 
 
    var completedAmount = element.all(by.css('.done-true')); 
 
    expect(completedAmount.count()).toEqual(2); 
 
    }); 
 
});

+0

本地主機是什麼,但它代表的IP地址'127.0.0.1'.before執行量角器測試,輸入以下命令'須藤的webdriver經理更新&& webdriver-manager start'在一個新的終端窗口中,然後執行'量角器conf.js' –

回答

2

我同意其他響應。 http://localhost:4444/wd/hub相同http://127.0.0.1:4444/wd/hub。通常,這是在你的/etc/hosts文件中定義。

因爲我想你只是想運行量角器的測試,只要您下載的二進制文件webdriver-manager update,你可以做的兩個選項之一:

  1. directConnect: true(和刪除seleniumAddress 。這是可用於鉻或火狐(版本47 *)沒有硒獨立服務器。
  2. 刪除seleniumAddress所有在一起。量角器將啓動硒測試之前獨立的服務器,然後在測試結束時撕下來。

注意:對於上面的工作,webdriver-manager update應該從項目目錄運行,以便將二進制文件下載到正確的目錄中。類似node node_modules/.bin/webdriver-manager update./node_modules/.bin/webdriver-manager update應該將驅動程序二進制文件下載到node_modules/protractor/node_modules/webdriver-manager/selenium

  • 那麼爲什麼Firefox 47,目前新版本不支持。我們目前正在測試Firefox 48+,但仍有一些懸而未決的問題。
+0

感謝你的這一點,它從selenium目錄執行時工作得很好。 – TestBud

1

需要2終端這一點。

  1. 在第一端子,以下命令運行: 的webdriver的管理器啓動 這將爲節點/客戶端的服務器訪問(您在seleniumAddress添加)

  2. 在第二終端,運行下面的命令: 量角器conf.js 這將啓動腳本中,通過使用在http://localhost:4444/wd/hub創建的服務器。

和本地主機是相同127.0.0.1。

+0

我試過同樣的問題,仍然面臨相同的問題 – TestBud

0

如果localhost與127.0.0.1不一樣,聽起來好像你的主機文件已經被播放或者有一些更惡毒的網絡問題。我不覺得我們有足夠的信息來正確調試你爲什麼遇到這個問題,但我想建議一種解決方法。爲什麼不使用實際的本地內部IPv4地址?

要獲得在Windows類型的IPv4地址的列表

ipconfig | findstr /R /C:"IPv4 Address" 

要獲得在Linux中類型的IPv4地址的列表

hostname -i 

要在Mac類型

得到您的IPv4地址
ifconfig |grep inet 

mac上的地址應該位於inet和netmask之間的最後一行

您的配置文件應該是這個樣子以後

exports.config = { 
    seleniumAddress: 'http://192.138.0.100:4444/wd/hub', 
    specs: ['todo-spec.js'] 
};