Mac os x yosemite安装appium 1.2.4及运行sample成功遇到的问题
2016-03-15 16:46
513 查看
原先使用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
相关文章推荐
- iOS访UC、腾讯视频播放
- 开发webapp与普工pc页面区别
- Android开发中遇到的坑
- 微信公众号多图文列表css
- Android事件分发小结
- Android Volley核心源码解析
- iOS 多线程 GCD的简单使用——iOS 编码复习(七)(多线程5)
- IOS基础:声音调用
- 看啦这么就别人的博客 我也来写一篇! Object转换其他类型
- iOS开发中集成Reveal
- android第二天之长度单位+内外边距
- 关于Android自定义view 你所需要知道的基本函数
- Android中的MVC
- Android 点击两次返回键 退出程序
- Unity3d Json解析库
- DateTimePicker——开源的Android日历类库
- ConfigurationManager.AppSettings Property
- 重要通知:“它”来了。Android N Developer Preview
- # iOS_Search Path $(SRCROOT)和$(PROJECT_DIR)
- JSPatch: iOS App 动态更新服务平台