blog icon indicating copy to clipboard operation
blog copied to clipboard

Protractor 测试环境搭建过程

Open lmk123 opened this issue 9 years ago • 2 comments

Protractor 是 AngularJS 官方推出的端到端测试工具。本来要安装这个工具非常简单:

npm install -g protractor
webdriver-manager update
webdriver-manager start

但是由于某墙的存在,在执行第二步的时候会报错:

C:\>webdriver-manager update
Updating selenium standalone
downloading https://selenium-release.storage.googleapis.com/2.45/selenium-server-standalone-2.45.0.jar...
Updating chromedriver
downloading https://chromedriver.storage.googleapis.com/2.14/chromedriver_win32.zip...
Error: Got error Error: connect ETIMEDOUT 173.194.38.42:443 from https://selenium-release.storage.googleapis.com/2.
45/selenium-server-standalone-2.45.0.jar
Error: Got error Error: connect ETIMEDOUT 216.58.221.65:443 from https://chromedriver.storage.googleapis.com/2.14/c
hromedriver_win32.zip

C:\>

我电脑上有开启 Shadowscoks 但仍然会报错。谷歌了半天,总算找到了解决方案。

  1. 手动下载报错信息里的两个文件(当然前提是你电脑里有类似于 Shadowscoks 这样的工具)
  2. 找到你第一步安装 Protractor 的文件夹(一般情况下是C:\Users\Administrator\AppData\Roaming\npm\node_modules\protractor),将刚才下载的两个文件粘贴到下面的 selenium 文件夹下
  3. chromedriver_win32.zip 重命名为 chromedriver_2.14.zip(2.14 替换为你下载的版本号)
  4. 解压 chromedriver_2.14.zip 里面的 chromedriver.exe 到同级目录

完成上面的步骤之后,你的 selenium 文件夹里面应该有三个文件:selenium-server-standalone-2.45.0.jarchromedriver_2.14.zipchromedriver.exe 。此时再从第二步开始运行就可以了:

webdriver-manager update
webdriver-manager start

如果你直接连接浏览器进行测试的话,可以不用下载 selenium server,只需要下载 chrome driver 并解压到 selenium 文件夹里就可以了,而且测试的时候也不需要使用 webdriver-manager start 命令单独开启一个 selenium 服务器。

考虑到日后可能会在新的电脑上搭建测试环境,所以把这个(坑爹的)过程记录了下来。我只想问,什么时候我们才能推倒那道柏林墙啊。

lmk123 avatar Apr 13 '15 09:04 lmk123

cnpm 下载就好,有做 chromedriver 的镜像。http://npm.taobao.org/mirrors/chromedriver

afc163 avatar Apr 13 '15 10:04 afc163

@afc163 对哦,我把 cnpm 给忘了!

lmk123 avatar Apr 13 '15 10:04 lmk123