RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难
Mac下Appium环境搭建:
消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为TestYao刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速把移动端自动化这块搞起来,试用几款目前流行的工具,腾讯的xtest定制版、神州数码的自动化测试平台、开源rf+appium框架。
经过一段试用最终还是选择了rf+appium主要原因有:
1.开源,网上社区活跃
2.扩展性强,针对不同项目不同的需求,封装不同的方法来实现
3.基于python语言,语言比较轻,编译方便,简单便捷
4.robotframework层次结构明了,脚步维护简单便捷
5.。。。。。。这几个是主要的其他就不说了
下面就开始搭建mac+appium的环境吧,网上搜出来的方法都是安装一大堆插件,刚开始我也是一脸懵逼,后来才知道安装插件都是为后面安装软件和appium运行环境做准备,所以不要问为什么了,照着装吧,装完就知道了:(之前都是专注于web端和andriod,对mac的认知程度还是比较基础,以后慢慢给提高起来,大神勿喷,哈哈)
安装RVM(用来安装更新ruby)
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable
// 修改 RVM 的 Ruby 安装源到国内的 [淘宝镜像服务器](http://ruby.taobao.org/),这样能提高安装速度
sed -i -e 's/ftp\.ruby-lang\.org\/pub\/ruby/ruby\.taobao\.org\/mirrors\/ruby/g' ~/.rvm/config/db
安装brew(后面安装软件使用不多说)
安装命令如下:
curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1
查看是否安装成功:
brew -v
注意:如果提示安装成功但是执行上面命令提示找不到brew,那可能是权限的问题,直接执行:
sudo -s
输入root密码
然后再执行,或是切到安装目录下执行,自己试吧,反正笔者比较水,刚接触mac就是这么解决的
当brew安装成功后,就可以随意安装自己想要的软件了,例如wget,命令如下:
sudo brew install wget
卸载的话,命令如下:
sudo brew uninstall wget
查看安装软件的话,命令如下:
sudo brew search /apache*/
注意/apache*/是使用的正则表达式,用/分割。
安装或更新Ruby(因为一般系统自带的版本太低安装软件会报错)
查看ruby版本:rvm list known
rvm install 2.2.0
rvm use 2.2.0
rvm use 2.2.0 --default
rvm list
安装:rvm isntall 2.2.0
安装node.js(通过上面的brew来安装)
brew install node
在我执行上面的命令之后,我想安装软件:
又提示了一下错误:
Error: /usr/local/Cellar is not writable. You should change the
ownership and permissions of /usr/local/Cellar back to your
user account:
sudo chown -R $(whoami) /usr/local/Cellar
Error: Cannot write to /usr/local/Cellar
我根据提示再次执行命令:
sudo chown -R $(whoami) /usr/local/Cellar
继续执行安装又报错,不知道看官醉不醉,反正笔者已是经醉了,这对用惯win系统的人简直是一种折磨,不要灰心继续童靴:
Error: Could not link:
/usr/local/share/doc/homebrew
Please delete these paths and run `brew update'
继续执行:
brew update
然后,再次安装我需要的软件,问题解决了。
issuserdeMacBook-Pro:~ issuser$ node -v
v8.2.1
appium安装(通过node去安装)
通过命令可以下载到最新的版本,命令如下:
npm install -g appium
也可以直接在官网下载appium.dmg安装:
https://github.com/appium/appium-desktop/releases/tag/v1.1.1
安装appium-doctor(因为新版本的appium已经没有了doctor来检查环境了,需要单独安装,老版本的自带)
cnpm install -g appium-doctor
使用appium-doctor检查appium环境
$ appium-doctor
info AppiumDoctor Appium Doctor v.1.4.3
info AppiumDoctor ### Diagnostic starting ###
info AppiumDoctor ✔ The Node.js binary was found at: /usr/local/bin/node
info AppiumDoctor ✔ Node version is 8.2.1
info AppiumDoctor ✔ Xcode is installed at: /Applications/Xcode.app/Contents/Developer
info AppiumDoctor ✔ Xcode Command Line Tools are installed.
info AppiumDoctor ✔ DevToolsSecurity is enabled.
info AppiumDoctor ✔ The Authorization DB is set up properly.
info AppiumDoctor ✔ Carthage was found at: /usr/local/bin/carthage
info AppiumDoctor ✔ HOME is set to: /Users/issuser
WARN AppiumDoctor ✖ ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ JAVA_HOME is NOT set!
WARN AppiumDoctor ✖ adb could not be found because ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ android could not be found because ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ emulator could not be found because ANDROID_HOME is NOT set!
WARN AppiumDoctor ✖ Bin directory for $JAVA_HOME is not set
info AppiumDoctor ### Diagnostic completed, 6 fixes needed. ###
info AppiumDoctor
info AppiumDoctor ### Manual Fixes Needed ###
info AppiumDoctor The configuration cannot be automatically fixed, please do the following first:
WARN AppiumDoctor - Manually configure ANDROID_HOME.
WARN AppiumDoctor - Manually configure JAVA_HOME.
WARN AppiumDoctor - Manually configure ANDROID_HOME and run appium-doctor again.
WARN AppiumDoctor - Add '$JAVA_HOME/bin' to your PATH environment
info AppiumDoctor ###
info AppiumDoctor
info AppiumDoctor Bye! Run appium-doctor again when all manual fixes have been applied!
info AppiumDoctor
带x号的都是为成功的挨个配置久好了。
修改android和java的环境变量(安装方法就不说了,以后有时间整理,我这里直接修改.bash_profile文件。)
修改.bash_profile文件有两种方式:
1.执行命令(提示查看自己jdk安装目录的命令:/usr/libexec/java_home [-V]):
vi .bash_profile
添加内容
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export ANDROID_HOME=/Users/issuser/Library/Android/sdk
export PATH=$ANDROID_HOME:$PATH
export PATH=${PATH}:/Users/issuser/Library/Android/sdk/platform-tools:/Users/issuser/Library/Android/sdk/tools
按esc键输入:
wq!
保存退出
注意:看官可以把上面的安装路径替换成自己的即可,有的人会遇到保存时提示.bash_profile文件为只读模式无法保存,那就用下面的方法吧,没办法很蛋疼mac
2.通过finder找到.bash_profile文件通过编辑器去修改(此文件默认是隐藏的,需要用下面的方式查找)
在 macOS Sierra,我们可以使用快捷键: Command + Shift + .
来快速(在 Finder 中)显示和隐藏隐藏文件了。
找到文件后,直接用电脑上安装的编辑器编辑就好了
再去执行: appium-doctor
启动apium连接手机进行简单录制和xpath定位:
我这里以android手机和知乎app为例子来演示
1.下载知乎app安装包放到桌面文件夹
2.打开appium并启动
4.启动成功后点击newsession填写app信息和安装设备信息:
点击start session,如果成功了就进入了录制界面,如果没有进入查看appium log报错信息去解决
(前提是手机和电脑连接正常通过adb devices命令可以找到设备udid)
ok,总算是大功告成了,nn的花了我2天的时间之后有时间在整理RF+Appium框架自动化测试系列二,敬请期待!