用於企業角度應用的 Protractor E2E 測試

Protractor 安裝和設定

步驟 1 :從此處下載並安裝 NodeJS。確保你擁有最新版本的節點。在這裡,我使用的是節點 v7.8.0。你需要安裝 Java Development Kit(JDK) 才能執行 selenium。

步驟 2 :開啟終端並輸入以下命令以全域性安裝 Protractor。

npm install -g protractor

這將安裝兩個工具,如 Protractor 和 webdriver 管理器。你可以通過以下命令驗證你的 Protractor 安裝:protractor –version. 如果成功安裝了 Protractor,系統將顯示已安裝的版本。(即版本 5.1.1)。否則你將不得不重新檢查安裝。步驟 3:更新 webdriver 管理器以下載必要的二進位制檔案。

webdriver-manager update

步驟 4:以下命令將啟動 Selenium Server。此步驟將在後臺執行 Web 驅動程式管理器,並將偵聽通過 Protractor 執行的任何測試。

webdriver-manager start 你可以在 http://localhost:4444/wd/hub/static/resource/hub.html. 上檢視有關伺服器狀態的資訊

使用 Protractor 編寫第一個測試用例:

在開始編寫測試用例之前,我們必須準備兩個檔案,即配置檔案和 spec 檔案。

在配置檔案中:

//In conf.js
exports.config = {
    baseUrl: ‘http://localhost:8800/adminapp’,
    seleniumAddress: ‘http://localhost:4444/wd/hub',
    specs: [‘product/product_test.js’],
    directConnect : true,
    capabilities :{
        browserName: ‘chrome’
    }
}

基本瞭解配置檔案中使用的術語:

baseUrl - 正在測試的應用程式的基本 URL。

seleniumAddress - 連線到已執行的 Selenium Server。

specs - spec 檔案的位置

directConnect :true - 直接連線到瀏覽器驅動程式。

功能 - 如果要在單個瀏覽器上進行測試,請使用功能選項。如果要在多個瀏覽器上進行測試,請使用 multiCapabilities 陣列。

你可以從此處找到更多配置選項。他們用其定義描述了所有可能的術語。

在 Spec 檔案中:

//In product_test.js

    describe(‘Angular Enterprise Boilerplate’, function() {
      it('should have a title', function() {
        browser.get('http://localhost:8800/adminapp’);
        expect(browser.getTitle()).toEqual(‘Angular Enterprise Boilerplate’);
      });
    });

基本瞭解 spec 檔案中使用的術語:

預設情況下,Protractor 使用 jasmine 框架作為其測試介面。 ‘describe’和’it’語法來自 jasmine 框架。你可以從這裡瞭解更多資訊。執行第一個測試用例:

在執行測試用例之前,請確保你的 webdriver 管理器和你的應用程式在終端的不同選項卡中執行。

現在,執行測試:

Protractor app/conf.js

你應該看到 Chrome 瀏覽器開啟了你的應用程式 URL 並關閉它自己。測試輸出應為 1 次測試,1 次斷言,0 次失敗。

好樣的! 你成功執行了第一個測試用例。