Calabash-android是支持android的UI自动化测试框架,网上看见很多同学说,安装calabash比较费劲,特别是Windows下安装,也没有一个详细的安装手册可供参考。正好,今天在Windows 7 上安装calabash-android成功,忍不住要分享一下。
我为什么要特别在标题中指出中文Win7?
因为我第一次在英文Win7下没碰到任何问题,第二次在中文Win7下安装碰到两个大问题,但都被我求助百度解决了。
第一个问题:中文Win7下不认识手机设备,第一台英文Win7下已经有人安装了豌豆荚。
第二个问题:中文Win7下运行calabash-android,报GBK错误。
calabash简介:
Calabash-android是支持android的UI自动化测试框架,PC端使用了cucumber框架,通过http和json与模拟器和真机上安装的测试apk通信,测试apk调用robotium的方法来进行UI自动化测试,支持webview操作。
安装calabash-android测试环境
安装ruby1.9.3
calabash-android 的git网址: https://github.com/calabash/calabash-android
进入Installation: https://github.com/calabash/calabash-android/blob/master/documentation/installation.md
因为要在Windows下安装,所以按照指示进入: http://rubyinstaller.org/
点击红色的Download图标,进入: http://rubyinstaller.org/downloads/
Ruby2.0据说不兼容旧版本,所以下载稳定版Ruby 1.9.3-p545.7z 解压到D:\下
把ruby的执行目录D:\ruby-1.9.3-p545-i386-mingw32\bin,加入到环境变量Path
运行命令ruby -v,看到如下结果,表示ruby安装成功
C:\Users\asus>ruby -v
ruby 1.9.3p545 (2014-02-24) [i386-mingw32]
安装JDK 7u65
安装JDK网上有很多教程,以下简略介绍。
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
jdk-7u65-windows-x64.exe
安装,并设置环境变量:
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_65
Path添加内容: ";%JAVA_HOME%\bin;%JAVA_HOME%\..\jre\bin"
启动命令行工具cmd.exe,输入:
C:\Users\asus>javac -version
javac 1.7.0_65
看到上述结果,说明jdk已正确安装。
安装Android SDK
到 http://developer.android.com/sdk/index.html 下载适用于Windows的SDK
google的网站,国内正常访问不了了。
幸好有个中国好码农整理了一个最新版Android SDK下载网站:
http://www.androiddevtools.cn/
我现在的是 ADT Bundle > 23.0.2 > Windows > 64位
因为我的Windows7已经安装了64位的JDK,所以必须安装64位的Android SDK(主要是64位的Eclipse)
在目录D:\adt-bundle-windows-x86_64-20140702\eclipse下双击文件eclipse.exe
看到Android Develop Kit启动页:
设置环境变量:
ANDROID_HOME=D:\adt-bundle-windows-x86_64-20140702\sdk
安装Ant-1.9.4
网址:http://ant.apache.org/bindownload.cgi
下载 apache-ant-1.9.4-bin.zip
解压到D:\下,
设置环境变量:
ANT_HOME=D:\apache-ant-1.9.4
Path添加内容: ";%ANT_HOME%\bin"
启动命令行工具cmd.exe,输入:
C:\Users\asus>ant
Buildfile: build.xml does not exist!
Build failed
看到上述结果,说明ant已正确安装。
gem命令安装calabash-android
设置gem的仓库为taobao
C:\Users\asus>gem sources -l
*** CURRENT SOURCES ***
http://rubygems.org/
C:\Users\asus>gem sources --remove http://rubygems.org/
http://rubygems.org/ removed from sources
C:\Users\asus>gem sources -a http://ruby.taobao.org/
http://ruby.taobao.org/ added to sources
C:\Users\asus>gem sources -l
*** CURRENT SOURCES ***
http://ruby.taobao.org/
用gem命令安装calabash-android
C:\Users\asus>gem install calabash-android
...
Installing RDoc documentation for escape-0.0.4...
Installing RDoc documentation for calabash-android-0.5.1...
C:\Users\asus>calabash-android version
0.5.1
测试android示例应用并解决GBK的问题
下载calabash-android-demoapp
https://github.com/calabash/calabash-android-demoapp
点击 Download ZIP下载calabash-android-demoapp-master.zip,并解压到D:\