我正在开发AngularJS应用,并希望使用Protractor进行端到端2端测试。我想从Browserstack上提供的测试浏览器套件中受益,并在Browserstack Automate而非本地Selenium服务器上运行测试。
如何设置系统以运行这些测试?
从版本3.0.0开始的量角器添加了对BrowserStack的内置支持。
您只需在您的浏览器中添加以下两个参数conf.js即可在BrowserStack上启动测试:
conf.js
browserstackUser: '<username>' browserstackKey: '<automate-key>'
登录帐户后,可以在此处找到您的用户名和自动密钥。
因此,假设您希望在 Chrome 50 / OS X Yosemite 上运行测试,conf.js则应如下所示:
exports.config = { specs: ['spec.js'], browserstackUser: '<username>', browserstackKey: '<automate-key>', capabilities: { browserName: 'Chrome', browser_version: '50.0', os: 'OS X', os_version: 'Yosemite' }, };
如果您希望 在不同的浏览器和操作系统组合上并行 运行测试,则可以使用multiCapabilities下面给出的:
multiCapabilities
exports.config = { specs: ['spec.js'], browserstackUser: '<username>', browserstackKey: '<automate-key>', multiCapabilities: [ { browserName: 'Safari', browser_version: '8.0', os: 'OS X', os_version: 'Yosemite' }, { browserName: 'Firefox', browser_version: '30.0', os: 'Windows', os_version: '7' }, { browserName: 'iPhone', platform: 'MAC', device: 'iPhone 5S' } ] };
一些有用的链接:
代码生成器 -帮助您配置功能,以在不同的各种浏览器和操作系统组合(尤其是移动设备)上进行测试。
适用于Protractor-BrowserStack的示例Github项目 -这应该可以帮助您入门。