专业版tracTor 测试教程:自动化工具框架
⚡ 智能摘要
专业版tractor 是一个端到端的行为驱动测试框架,专为 AngularJS 应用程序构建,它结合了 Selenium 使用 Jasmine 和 WebDriver,测试人员可以驱动真实的浏览器,并验证 Angular 特有的元素是否符合标准。 Selenium 定位器无法到达。

什么是专业版tracTor测试?
专业版trac器 是一种自动化和端到端行为驱动的测试工具,在 测试与验证 AngularJS 应用程序,并作为解决方案集成商,结合了以下强大技术: SeleniumJasmine、WebDriver 等。Pro 的目的tracTor 测试不仅适用于测试 AngularJS 应用程序,也适用于编写自动化测试。 回归测试 也适用于普通的Web应用程序。
⚠️ 弃用通知: 专业版tractor是 已弃用并已存档支持已于 2023 年 8 月结束,Angular CLI 也放弃了其 Pro 版本。tracAngular 15 之后的 tor 构建器。选择 剧作家, Cypress对于新用户,可以使用 WebdriverIO 或 TestCafe。 端到端测试以下操作步骤适用于旧版套房。
为什么我们需要专业人士tracTor框架?
Java几乎所有Web应用程序都使用脚本。随着应用程序的增长, JavaScript 同时,应用程序的规模和复杂性也会增加。在这种情况下,测试人员要针对各种场景测试Web应用程序就变得非常困难。
有时使用以下方法很难捕获 AngularJS 应用程序中的 Web 元素 JUnit or Selenium WebDriver。
专业版tractor 是一个用 Node.js 编写的程序。 Java脚本和Node一起运行以识别AngularJS应用程序中的Web元素,并且它还使用WebDriver通过用户操作来控制浏览器。
那么,AngularJS应用程序究竟是什么呢?
AngularJS AngularJS 应用是指使用扩展 HTML 语法来表达 Web 应用组件的 Web 应用。它主要用于动态 Web 应用。与普通 Web 应用相比,这类应用的代码量更少,也更灵活。需要注意的是,AngularJS 1.x 已于 2021 年 12 月 31 日停止长期支持,因此这类应用如今已属于过时版本。
为什么我们不能使用常规方法查找 AngularJS 网页元素 Selenium WebDriver?
AngularJS 应用程序有一些额外的 HTML 属性,例如 ng-repeater、ng-controller、ng-model 等,这些属性并未包含在 .html 文件中。 Selenium 定位器。 Selenium 无法使用以下方式识别这些网络元素 Selenium 代码。所以,专业人士trac山顶上的托尔 Selenium 能够处理和控制Web应用程序中的这些属性。
专业版tractor 是一个面向 AngularJS 应用的端到端测试框架。大多数框架都侧重于执行测试。 单元测试 对于 AngularJS 应用程序,ProtracTor 专注于测试应用程序的实际功能。
在我们开始专业课程之前trac要使用 Tor,我们需要安装以下软件:
- Selenium: 你可以找到 Selenium 安装步骤 Selenium WebDriver 安装指南.
- NPM(Node.js): 我们需要安装 Node.js 才能安装 Pro。trac您可以在以下位置找到这些安装步骤: Node.js 下载和安装指南.
专业版trac托尔安装
步骤1) 打开命令提示符并输入 “npm install -g protrac托尔” 然后按Enter.
上述命令将下载必要文件并安装 Pro 版。trac客户端系统上的 tor,如下所示。
步骤2) 使用以下方法检查安装和版本 “专业tractor 版本设立的区域办事处外,我们在美国也开设了办事处,以便我们为当地客户提供更多的支持。“ 如果成功,它将显示如下图所示的版本。如果不成功,请再次执行步骤 1。
(步骤 3 和 4 是可选的,但为了更好的练习建议这样做)
步骤3) 更新 WebDriver 管理器。WebDriver 管理器用于在特定浏览器中针对 Angular Web 应用程序运行测试。tracTor 已安装,WebDriver 管理器需要更新到最新版本。可以通过在命令提示符中运行以下命令来完成此操作。
webdriver-manager update
驱动程序二进制文件下载如下所示。
步骤4) 启动 WebDriver 管理器。此步骤将在后台运行 WebDriver 管理器,并监听通过 pro 运行的任何测试。trac托尔。
测试运行完毕后,WebDriver 会自动在相应的浏览器中加载它。使用以下命令启动管理器。
webdriver-manager start
控制台会报告监听地址。
现在,如果你去以下地方 URL (http://localhost:4444/wd/hub/static/resource/hub.html在浏览器中,您实际上会看到 WebDriver 管理器在后台运行。
使用 Pro 进行 AngularJS 应用程序测试示例trac器
驱动程序管理器运行后,ProtracTor 运行需要两个文件,一个是 规格 文件和 配置 文件中。
- 配置文件此文件有助于专业人士trac使用 Tor 连接到测试文件(specs.js)所在的目录,并与 Selenium 服务器(Selenium 地址)。Chrome 是 Pro 的默认浏览器。trac托尔。
- 规格文件: 该文件包含与应用程序交互的逻辑和定位器.
步骤1) 我们必须开放 https://angularjs.org 并在“在此处输入名称”文本框中输入文本“GURU99”。
步骤2) 在此步骤中,
- 输入名称“Guru99“
- 输出文本“你好 Guru可以看到99英寸。
步骤3) 现在我们必须在输入名称后从网页中捕获文本,并需要与预期文本进行验证.
代码:
我们必须准备配置文件 (conf.js) 和 spec 文件 (spec.js) 正如刚才提到的。
spec.js 的逻辑:
describe('Enter GURU99 Name', function() { it('should add a Name as GURU99', function() { browser.get('https://angularjs.org'); element(by.model('yourName')).sendKeys('GURU99'); var guru= element(by.xpath('html/body/div[2]/div[1]/div[2]/div[2]/div/h1')); expect(guru.getText()).toEqual('Hello GURU99!'); }); });
Code spec.js 的解释:
- 描述('输入 GURU99 名称',function()描述语法来自 Jasmine框架这里的“describe”('输入 GURU99 名称')通常定义应用程序的组件,可以是类或函数等。在名为“输入 GURU99”的代码套件中,它只是一个字符串,而不是代码。
- it('应添加一个名称为 GURU99', function()
- 浏览器获取('https://angularjs.org')就像 Selenium WebDriver browser.get 将打开一个新的浏览器实例,并指定要使用的浏览器类型。 URL.
- element(通过.model('你的名字'))。发送密钥('GURU99')这里我们使用模型名称“yourName”查找网页元素,该名称是“的值”ng模型在网页上。请查看下面的屏幕截图——
- var guru= element(by.xpath('html/body/div[2]/div[1]/div[2]/div[2]/div/h1')) 在这里我们使用 XPath的 并将其值存储在变量“guru”中.
- 期望(guru.getText())。等于('Hello GURU99!')最后,我们验证从网页上获取的文本(使用 gettext() )是否与预期文本一致。
conf.js的逻辑:
exports.config = { seleniumAddress: 'http://localhost:4444/wd/hub', specs: ['spec.js'] };
Code conf.js 的解释
- seleniumAddress: 'http://localhost:4444/wd/hub'配置文件告诉 Protrac托尔的位置 Selenium 交谈地址 Selenium WebDriver。
- specs: ['spec.js']这行告诉 Protrac测试文件 spec.js 的位置
执行 Code
首先,导航到 conf.js 和 spec.js 所在的文件夹,然后按照以下步骤操作。.
步骤1) 打开命令提示符。
步骤2) 确保 Selenium WebDriver 管理器已启动并运行。为此,请输入命令“webdriver-manager start”并按 Enter 键。.
(如果 Selenium WebDriver 未启动并运行,我们无法继续进行 Pro 测试。tractor 找不到用于处理 Web 应用程序的 WebDriver)
步骤3) 打开一个新的命令提示符并输入命令 “专业tractor conf.js” 运行配置文件。运行结果如下所示。
说明:
- 这里专业版tractor 将执行包含给定 spec 文件的配置文件。
- 我们可以看到 Selenium 服务器运行在“http://localhost:4444/wd/hub”我们在conf.js文件中给出了这个信息。
- 另外,这里可以看到结果,有多少通过了,有多少失败了,如上面的截图所示.
合格的结果已经确认。接下来,我们来看一个不合格的结果。
步骤1) 打开并更改后,spec.js 应变为“'Hello change GURU99',如下所示。
spec.js 中更改之后 :
describe('Enter GURU99 Name', function() { it('should add a Name as GURU99', function() { browser.get('https://angularjs.org'); element(by.model('yourName')).sendKeys('GURU99'); var guru= element(by.xpath('html/body/div[2]/div[1]/div[2]/div[2]/div/h1')); expect(guru.getText()).toEqual('Hello change GURU99!'); }); });
步骤2) 保存 spec.js 文件并重复上述“执行”步骤 Code“ 部分
现在,执行上述步骤。
结果:
我们可以在屏幕截图中看到结果失败,标记为“F”,原因如下 “预期‘Hello GURU99!’等于‘Hello change GURU99!’。 此外,它还显示了执行代码时遇到的失败次数。
我们可以用 Selenium WebDriver?
有时可以使用 XPath 或 CSS 选择器定位 AngularJS 元素。 Selenium WebDriver。然而,这些元素是动态生成和重新绑定的,因此 Protrac对于 AngularJS 套件来说,tor 是更安全的选择。
使用 Jasmine Reporters 生成报告
专业版tracTor 支持 Jasmine 报告器。本节使用 JUnit使用 XmlReporter 自动生成 XML 格式的测试执行报告,请按照以下步骤操作。
Jasmine Reporter 的安装
有两种选择,本地或全球。
- 打开命令提示符执行以下命令进行本地安装
npm install --save-dev jasmine-reporters@^2.0.0
上述命令会将 jasmine-reporters 安装到本地,安装位置在命令运行的目录中。
- 打开命令提示符执行以下命令进行全局安装
npm install –g jasmine-reporters@^2.0.0
这里的记者是本地部署的。.
步骤1) 执行命令。
npm install --save-dev jasmine-reporters@^2.0.0
从下面的命令提示符中。
步骤2) 检查目录中的安装文件夹. 如果成功安装,则“Node_modules”应该可用,如下面的快照所示。
步骤3) 在现有的conf.js文件中添加以下彩色代码
exports.config = { seleniumAddress: 'http://localhost:4444/wd/hub', capabilities: { 'browserName': 'firefox' }, specs: ['spec.js'], framework: 'jasmine2' , onPrepare: function() { var jasmineReporters = require('C:/Users/RE041943/Desktop/guru/node_modules/jasmine-reporters'); jasmine.getEnv().addReporter(new jasmineReporters.JUnitXmlReporter(null, true, true) ); } };
代码说明:
在代码中,我们正在生成报告“JUnitXML 报告器”并提供存储报告的路径。
步骤4) 打开命令提示符并执行命令 为tractor conf.js。
步骤5) 当您执行上述代码时,将在所提及的路径中生成 junitresults.xml。
步骤6) 打开 XML 并验证结果。失败消息在结果文件中显示为我们的 测试用例 测试失败。测试用例失败的原因是“spec.js”中的预期结果与网页的实际结果不匹配。
步骤7) 使用 junitresult.xml 文件作为证据或结果文件。
专业版tracTor 与现代测试自动化替代方案
自 ProtracTor 已停止更新,因此规划新套件的团队需要了解它与 Angular 项目目前迁移到的框架相比如何。下表比较了 Pro 和 Pro。tractor 与以下常见问题解答中最常出现的三种替代方案。
| 骨架 | 状态 | 语言支持 | 浏览器引擎 | Angular 特有的定位器 |
|---|---|---|---|---|
| 专业版trac器 | 已弃用,将于2023年8月终止服务 | Java脚本, TypeScript | 铬, Firefox,通过 IE Selenium 网络驱动程序 | 按模型、按绑定、按重复器 |
| Cypress | 积极维护 | Java脚本, TypeScript | 铬, Firefox,边缘 | 无;依赖于 CSS 或数据属性 |
| 剧作家 | 积极维护 | Java脚本, TypeScript, Python, Java, 。网 | 铬, FirefoxWebKit | 无;依赖于 CSS、文本或角色选择器 |
| 网络驱动程序IO | 积极维护 | Java脚本, TypeScript | 铬, Firefox、WebKit 通过 WebDriver 或 DevTools | 无;依赖于 CSS 或数据属性 |
拥有现有职业球员的球队tracTor套件通常移动速度最快 网络驱动程序IO由于其命令风格和 Selenium基于驱动程序的管理与 Pro 保持接近tracTor 测试人员早已知道这一点。刚起步或需要最快完成测试的团队,通常会选择…… Cypress 或者改称剧作家。















