Mac os x yosemite安装appium 1.2.4及运行sample成功遇到的问题

原先使用appium正常,昨天升级了mac os x yosemite系统后,启动appium,可以看到1.1.0的版本号;但是   启动appium-doctor时提示

Running iOS Checks

Could not detect Mac OS X Version

Appium-Doctor detected problems. Please fix and rerun Appium-Doctor.


而且编译并运行示例中的simple程序,编译并运行后出现失败


lautekiMacBook-Pro:python lau$ python ios_simple.py 

test_scroll (__main__.SimpleIOSTests) ... ERROR

test_ui_computation (__main__.SimpleIOSTests) ... ERROR


======================================================================

ERROR: test_scroll (__main__.SimpleIOSTests)

----------------------------------------------------------------------

Traceback (most recent call last):

  File "ios_simple.py", line 24, in setUp

    'deviceName': 'iPhone Simulator'

  File "build/bdist.macosx-10.9-intel/egg/appium/webdriver/webdriver.py", line 34, in __init__

    super(WebDriver, self).__init__(command_executor, desired_capabilities, browser_profile, proxy, keep_alive)

  File "/Library/Python/2.7/site-packages/selenium-2.42.1-py2.7.egg/selenium/webdriver/remote/webdriver.py", line 73, in __init__

    self.start_session(desired_capabilities, browser_profile)

  File "/Library/Python/2.7/site-packages/selenium-2.42.1-py2.7.egg/selenium/webdriver/remote/webdriver.py", line 121, in start_session

    'desiredCapabilities': desired_capabilities,

  File "/Library/Python/2.7/site-packages/selenium-2.42.1-py2.7.egg/selenium/webdriver/remote/webdriver.py", line 173, in execute

    self.error_handler.check_response(response)

  File "/Library/Python/2.7/site-packages/selenium-2.42.1-py2.7.egg/selenium/webdriver/remote/errorhandler.py", line 164, in check_response

    raise exception_class(message, screen, stacktrace)

 

WebDriverException: Message: u'A new session could not be created. (Original error: Could not find Automation.tracetemplate in /Applications/Xcode 2.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate)' 

经过google后发现是xcode6及ios8的环境变量问题

解决方法:


所以只能重装appium了


在安装的过程中遇到以下几个问题:

1.安装appium,当前通过npm install appium

1)方法一:直接敲入命令

npm install -g appium

加载一段时间后弹出错误提示:

lautekiMacBook-Pro:appium lau$ npm install -g appium

npm http GET https://registry.npmjs.org/appium

npm http 200 https://registry.npmjs.org/appium

npm http GET https://registry.npmjs.org/appium/-/appium-1.2.4.tgz

npm http 200 https://registry.npmjs.org/appium/-/appium-1.2.4.tgz

npm ERR! Error: shasum check failed for /var/folders/gv/zd_14bvj499_46g4zmsqks8h0000gn/T/npm-12728-i69rr4LD/1413628135506-0.4923316186759621/tmp.tgz

npm ERR! Expected: 1a116c5e6cbc999f3abf7b0ec75c90ab9c2a6692

npm ERR! Actual:   088d1ded024c280ae09dc6194a0d9b342da038d9

npm ERR! From:     https://registry.npmjs.org/appium/-/appium-1.2.4.tgz

npm ERR!     at /usr/local/lib/node_modules/npm/node_modules/sha/index.js:38:8

npm ERR!     at ReadStream. (/usr/local/lib/node_modules/npm/node_modules/sha/index.js:85:7)

npm ERR!     at ReadStream.EventEmitter.emit (events.js:117:20)

npm ERR!     at _stream_readable.js:919:16

npm ERR!     at process._tickCallback (node.js:419:13)

npm ERR! If you need help, you may report this *entire* log,

npm ERR! including the npm and node versions, at:

npm ERR!    


npm ERR! System Darwin 14.0.0

npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "appium"

npm ERR! cwd /Users/lau/Documents/Code_Tools/appium

npm ERR! node -v v0.10.28

npm ERR! npm -v 1.4.9

npm ERR! 

npm ERR! Additional logging details can be found in:

npm ERR!     /Users/lau/Documents/Code_Tools/appium/npm-debug.log

 

npm ERR! not ok code 0

经过google,这个问题是因为校验和不对. 下的文件跟服务器上的文件校验和不相等.  应该是传输过程中下载的东西受损了.. 可能是网络原因.
所以该方法暂时不用
2)方法二: npm在下载appium时特别慢,经过google,觉得换registry可能有用;
官方默认的: https://registry.npmjs.org/appium
网上找的一个:http://registry.cnpmjs.org
敲入命令:npm --registry http://registry.cnpmjs.org install -g appium
下载过程中会出现错误

npm ERR! Error: EACCES, open '/Users/lau/.npm/bufferpack/0.0.6/package.tgz'

npm ERR!  { [Error: EACCES, open '/Users/lau/.npm/bufferpack/0.0.6/package.tgz']

npm ERR!   errno: 3,

npm ERR!   code: 'EACCES',

npm ERR!   path: '/Users/lau/.npm/bufferpack/0.0.6/package.tgz',

npm ERR!   parent: 'appium' }

npm ERR! 

npm ERR! Please try running this command again as root/Administrator.


npm ERR! System Darwin 14.0.0

npm ERR! command "node" "/usr/local/bin/npm" "--registry" "http://registry.cnpmjs.org" "install" "-g" "appium"

npm ERR! cwd /Users/lau/Documents/Code_Tools/appium/appium_app

npm ERR! node -v v0.10.28

npm ERR! npm -v 1.4.9

npm ERR! path /Users/lau/.npm/bufferpack/0.0.6/package.tgz

npm ERR! code EACCES

npm ERR! errno 3

npm ERR! stack Error: EACCES, open '/Users/lau/.npm/bufferpack/0.0.6/package.tgz'


在sudo下运行,
sudo npm --registry http://registry.cnpmjs.org install -g appium   【本人用这个命令安装成功】
运行完会出现提示

error: Appium will not work if used or installed with sudo. Please rerun/install as a non-root user. If you had to install Appium using `sudo npm install -g appium`, the solution is to reinstall Node using a method (Homebrew, for example) that doesn't require sudo to install global npm packages.


权限问题,无法使用sudo来运行appium

 

尝试如下方法:
②解决方法如下:在运行node install appium前运行以下命令
>> cd /usr/local/bin
>>   sudo chown -R root:admin /usr/local;
③然后卸载appium,卸载成功
npm uninstall appium -g
④最后再次下载, npm --registry http://registry.cnpmjs.org install -g appium
还是运行错误

npm http GET http://registry.cnpmjs.org/appium

npm http 304 http://registry.cnpmjs.org/appium

npm ERR! error rolling back Error: EACCES, unlink '/usr/local/lib/node_modules/appium/.appiumconfig.json'

npm ERR! error rolling back  appium@1.2.4 { [Error: EACCES, unlink '/usr/local/lib/node_modules/appium/.appiumconfig.json']

npm ERR! error rolling back   errno: 3,

npm ERR! error rolling back   code: 'EACCES',

npm ERR! error rolling back   path: '/usr/local/lib/node_modules/appium/.appiumconfig.json' }

npm ERR! Error: EACCES, unlink '/usr/local/lib/node_modules/appium/.appiumconfig.json'

npm ERR!  { [Error: EACCES, unlink '/usr/local/lib/node_modules/appium/.appiumconfig.json']

npm ERR!   errno: 3,

npm ERR!   code: 'EACCES',

npm ERR!   path: '/usr/local/lib/node_modules/appium/.appiumconfig.json' }

npm ERR! 

npm ERR! Please try running this command again as root/Administrator.


npm ERR! System Darwin 14.0.0

npm ERR! command "node" "/usr/local/bin/npm" "--registry" "http://registry.cnpmjs.org" "install" "-g" "appium"

npm ERR! cwd /Users/lau/Documents/Code_Tools/appium

npm ERR! node -v v0.10.28

npm ERR! npm -v 1.4.9

npm ERR! path /usr/local/lib/node_modules/appium/.appiumconfig.json

npm ERR! code EACCES

npm ERR! errno 3

npm ERR! stack Error: EACCES, unlink '/usr/local/lib/node_modules/appium/.appiumconfig.json'

npm ERR! 

npm ERR! Additional logging details can be found in:

npm ERR!     /Users/lau/Documents/Code_Tools/appium/npm-debug.log

npm ERR! not ok code 0

错误原因:卸载不干净,清除/usr/local/lib/node_modules/下appium文件夹

sudo rm -rf appium

⑤再次运行npm install -g appium
下载成功,运行appium

info: Welcome to Appium v1.2.4 (REV 71584425ecf777349e3215f0f18e71e7782acfb6)

info: Appium REST http interface listener started on 0.0.0.0:4723

info: Console LogLevel: debug


3)继续npm install wd
npm --registry http://registry.cnpmjs.org install -g wd
安装完后验证appium能否运行
浏览器敲入http://0.0.0.0:4723/
显示:
 That URL did not map to a valid JSONWP resource 

说明成功

4)安装selenium组件

因为是Python版,所以就去Selenium官网下载Python的WebDriver(selenium-2.43.0.tar.gz)

https://pypi.python.org/pypi/selenium

解压:

#gzip -dc selenium-2.43.0.tar.gz | tar xvf -

安装:

#cd selenium-2.43.0

#sudo python setup.py install 

安装完成selenium
5)执行sample code
下载源代码: git clone https://github.com/appium/appium.git,下载完执行以下命令:
① 安装待测试的app

首先,我们需要用xcode编译这个app

#cd appium

#cd sample-code/apps/TestApp

#xcodebuild -sdk iphonesimulator 
出现build successful表示OK
②执行测试脚本

#cd appium

#cd sample-code

#cd examples/python

#python simple.py

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值