use*_*825 6 cloud angularjs protractor
我是Cloud9的新手,我正在尝试使用Protractor进行e2e测试.我正在运行angular-phonecat示例.
错误如下:
Using ChromeDriver directly...
/home/ubuntu/workspace/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/error.js:109
var template = new Error(this.message);
^
UnknownError: chrome not reachable
(Driver info: chromedriver=2.10.267518,platform=Linux 3.14.13-c9 x86_64)
at new bot.Error (/home/ubuntu/workspace/node_modules/protractor/node_modules/selenium-webdriver/lib/atoms/error.js:109:18)
..
Run Code Online (Sandbox Code Playgroud)
我安装了chromedriver.唯一的问题是如何在cloud9上安装实际的Chrome并运行测试?
先感谢您,
干杯,Haytham
use*_*560 11
我是webase IDE的粉丝,Cloud9是最好的之一.这里有一种安装Xvfb,chrome和Protractor的方法,用于在Cloud9上进行 AngularJS端到端自动化测试
打开一个终端(已经安装在c9.io上的xvfb)
安装X11字体
$ sudo apt-get install -y xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic
Run Code Online (Sandbox Code Playgroud)安装最后一个chrome
$ wget -q -O - \
https://dl-ssl.google.com/linux/linux_signing_key.pub \
| sudo apt-key add -
$ sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" \
>> /etc/apt/sources.list.d/google-chrome.list'
$ sudo apt-get update
$ sudo apt-get install -y google-chrome-stable
Run Code Online (Sandbox Code Playgroud)安装量角器
$ npm install -g protractor
Run Code Online (Sandbox Code Playgroud)更新webdriver
$ webdriver-manager update
Run Code Online (Sandbox Code Playgroud)使用--no-sandbox选项与chrome
由于c9.io在容器内运行,因此需要此选项.
更新量角器conf.js以将选项传递给chrome
capabilities: {
browserName: 'chrome',
'chromeOptions': {
args: ['--no-sandbox']
}
}
Run Code Online (Sandbox Code Playgroud)在无头铬上进行量角器测试
用xvfb启动webdriver(无头)
$ xvfb-run webdriver-manager start
Run Code Online (Sandbox Code Playgroud)在其他终端上运行测试
$ protrator conf.js
Run Code Online (Sandbox Code Playgroud)不可能将浏览器“安装”到 cloud9 上来运行基于浏览器的端到端测试场景。selenium Web 驱动程序正在寻找加载 chrome 来运行测试,但会抛出错误,因为它在 cloud9 开发环境中找不到。
如果您致力于在像 cloud9 这样的在线 IDE 上运行这些测试,您唯一的选择是使用像 phantomJS 这样的无头浏览器,但量角器文档中的注意事项
我们建议不要使用 PhantomJS 进行 Protractor 测试。有许多关于 PhantomJS 崩溃和行为与真实浏览器不同的问题报告。
我建议您在本地下载您的应用程序,并在用户实际用来访问您的应用程序的浏览器上运行广泛的 E2E 测试。
另一种选择是使用 Saucelabs ( https://saucelabs.com/ ) 之类的工具进行基于云的自动化跨浏览器测试;这需要在protractor_conf.js文件中进行一些配置。请注意,基于云的测试可能会产生额外成本。
| 归档时间: |
|
| 查看次数: |
1544 次 |
| 最近记录: |