Protractor是为Angular和AngularJS应用程序开发的端到端测试框架。它以真实用户的身份在真实浏览器中运行时,对与之交互的应用程序进行测试。在本文中,我们将创建一个基本测试。
先决条件:Protractor的安装和设置
方法:
- 我们将创建一个基本的测试程序,在该程序中,我们将检查Angular Web应用程序的标题是否正确。
- 所有Protractor测试都将包含一个包含配置的文件,这将是启动测试的初始文件。
- 让我们使用conf.js名称创建此文件。
conf.js:
Javascript
exports.config = {
// Capabilities to be passed to the
// webdriver instance.
// Here we are specifying the browser
// to be chrome
capabilities: {
'browserName': 'chrome'
},
// Framework to use. Jasmine is
// being used here.
framework: 'jasmine',
// The test file which are relative
// to the current working directory
// when protractor is called.
specs: ['test.js'],
// Options to be passed to Jasmine.
jasmineNodeOpts: {
defaultTimeoutInterval: 30000
}
};
Javascript
describe('Protractor Demo App', function () {
it('should have a title', function () {
// Open the AngularJS webpage
browser.get(
'http://juliemr.github.io/protractor-demo/');
// Check if the title is 'Super
// Calculator' or not.
expect(browser.getTitle())
.toEqual('Super Calculator');
});
});
- 现在,让我们创建测试文件test.js。在此文件中,我们将访问AngularJS Web应用程序,然后检查标题是否正确。
- Browser是Protractor创建的全局变量,用于全局浏览器级别的命令,例如使用browser.get导航。
- describe和it语法来自Jasmine框架,其中describe是对测试的描述,而它是测试的步骤。
规格文件名为test.js:
Java脚本
describe('Protractor Demo App', function () {
it('should have a title', function () {
// Open the AngularJS webpage
browser.get(
'http://juliemr.github.io/protractor-demo/');
// Check if the title is 'Super
// Calculator' or not.
expect(browser.getTitle())
.toEqual('Super Calculator');
});
});
- 最后,我们准备使用下面给出的命令运行文件:
protractor conf.js
- 这将运行配置文件,并且将如以下屏幕截图所示运行测试:
输出: