用于企业角度应用的 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 次失败。

好样的! 你成功运行了第一个测试用例。