Appium Mac安装测试

———————————————————————

1、安装Appium Mac上环境搭建

———————————————————————

参考:

http://blog.csdn.net/yuan1809/article/details/19122813

http://appium.io/ 

https://github.com/appium/appium

http://download.csdn.net/detail/ouyangtianhan/8671819

对环境的需求:

https://github.com/appium/appium的说法:

npm 0.8 or greater
Mac OS X 10.7 or higher, 10.8.4 recommended
XCode >= 4.6.3

 

好了,环境基本上弄好了,下一步

1、安装node.js

2、安装appium

$ npm install -g [email protected]

注意appium的版本和os的兼容。

3、启动appium

$appium &

真机上测试,启动时指定设备的UUID

$appium -U xxxxxxxxxxxxxxxxxxxxxxxxxx

appium启动服务的参数详细:

 https://github.com/appium/appium/blob/master/docs/server-args.md

4、真机上运行,被测app必须是Developer版本。

 

再看看官方网页的说法:

npm install -g appium

npm install wd

appium &

node your-appium-test.js

具体步骤:

1)、安装brew,去homebrew官网。大致是这个步骤,顺利安装上了:

$ cd bin

$ ./brew -v

Homebrew 0.9.5

$ file brew

brew: POSIX shell script text executable

cd

vi .bash_profile

export PATH=/usr/local/homebrew/bin:$PATH

 

关闭后重新打开terminal,使.bash_profile被执行,使得PATH环境变量生效,当然你也可以source ./.bash_profile

 

在这个安装的过程中,唯一需要注意的是权限,我的作法是在所有步骤之前直接把/usr/local目录都改为了admin所有,就不用每次安装都用sudo来搞了

sudo chown -Rf 用户名:staff  /usr/local


2)、这下安装node.js就简单了,一行命令:brew install node

      然后就是看看node安装的对不对,先vi hello_world.js,输入以下内容(假定你会用vivim一类的编辑器)

var sys = require(‘sys‘),

 

http = require(‘http‘);

 

http.createServer(function(req, res) {

    setTimeout(function() {

        res.writeHead(200, {‘Content-Type‘: ‘text/plain‘});

        res.write(‘Hello World‘);

        res.end();//截至最新版 res.close();以替换为 res.end();

    }, 2000);

 

}).listen(8000);

 

执行命令:

node hello_world.js

在浏览器中输入:localhost:8000,返回了Hello World字样就是成功了。


3)、最后检查一下:

$node -v

0.10.15

$npm -v

1.4.6

 

好了,全齐了。这下该正事了:

npm install -g appium

npm install wd

 

运行node appium-doctor来检查一下appium是不是都彻底ok了:

admins-Mac:bin admin$ pwd

/usr/local/bin

admins-Mac:bin admin$ ls -l

total 39064

lrwxr-xr-x  1 admin  staff        40 Apr 14 16:33 appium -> ../lib/node_modules/appium/bin/appium.js

lrwxr-xr-x  1 admin  staff        47 Apr 14 16:33 appium-doctor -> ../lib/node_modules/appium/bin/appium-doctor.js

lrwxr-xr-x  1 admin  staff        47 Apr 14 16:33 authorize_ios -> ../lib/node_modules/appium/bin/authorize-ios.js

-rwxrwxr-x  1 admin  staff       813 Apr 14 08:53 brew

-rwxr-xr-x  1 admin  staff  19975968 Jul 26  2013 node

lrwxr-xr-x  1 admin  staff        38 Jul 31  2013 npm -> ../lib/node_modules/npm/bin/npm-cli.js

lrwxr-xr-x  1 admin  staff        33 Jul 31  2013 weinre -> ../lib/node_modules/weinre/weinre

 

因为这台mac上没有android环境,所以报错,我也没打算在这台mac上测试android程序,所以不用搭理。Appium已经OK了。

 

启动appium & (&的意思是后台执行,不占用窗口)

admins-Mac:appium admin$ appium &

[1] 1886

admins-Mac:appium admin$ info: Welcome to Appium v0.18.1 (REV d242ebcfd92046a974347ccc3a28f0e898595198)

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

info: socket.io started

info: Non-default server args: {"merciful":true}

 

检查进程,顺带删除掉这个后台进程:

admins-Mac:appium admin$ ps -ef|grep appium

  501  1886  1274   0  4:47PM ttys000    0:00.73 node /usr/local/bin/appium

  501  1892  1274   0  4:48PM ttys000    0:00.00 grep appium

admins-Mac:appium admin$ kill 1886

 

4、安装WebDriver


二,Selenium WebDriver

因为是Python版,所以就去Selenium官网下载PythonWebDriverselenium-2.39.0.tar.gz

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

解压:

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

安装:

#cd selenium-2.39.0

#sudo python setup.py install  //sudo依旧是解决Permission的问题

-----------

这样,WebDriver就安装成功了

 我照着操作了一遍,版本不同了而已,很顺利:

selenium-2.41.0.tar.gz

 

Installed /Library/Python/2.7/site-packages/selenium-2.41.0-py2.7.egg

Processing dependencies for selenium==2.41.0

Finished processing dependencies for selenium==2.41.0

 

 

admins-Mac:selenium-2.41.0 admin$ which python

/usr/bin/python

admins-Mac:selenium-2.41.0 admin$ python -V

Python 2.7.2

 


———————————————————————

2、测试

———————————————————————

----------模拟器------------

编译例子:点击打开链接 

三,要测试的app

测试的是appium提供的TestApp

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

#cd appium

#cd sample-code/apps/TestApp

#xcodebuild -sdk iphonesimulator  //为了防止iphonesimulator和设置的冲突,没有注明iphonesimulator的版本

-----------

如果看到** BUILD SUCCEEDED **,这个TestAppbuild成功了。

 

操作的时候,留心先进入到项目目录下

admins-Mac:testDemo admin$ cd test

admins-Mac:test admin$ ls -l

total 0

drwxr-xr-x  14 admin  staff  476 Apr 22  2013 test

drwxr-xr-x@  5 admin  staff  170 Apr 22  2013 test.xcodeproj

 

admins-Mac:test admin$ xcodebuild -sdk iphonesimulator

Build settings from command line:

SDKROOT = iphonesimulator7.0

=== BUILD TARGET test OF PROJECT test WITH THE DEFAULT CONFIGURATION (Release) ===

 

…..

 

我后来运行的时候老是不能指定某个模拟器加载,而老是加载ios7.0,估计就是这个环节的相关配置引起的,以后有空再研究吧。不过也有群友说文档上说会自动启动最高版本的模拟器,这是不可以修改的。算了,反正以后多半使用真机做。

 

看到:** BUILD SUCCEEDED ** 就是编译成功了,在当前目录下就会生成一个build目录,顺带找找app文件在哪里。

admins-Mac:test admin$ pwd

/Users/admin/Documents/demo/testDemo/test

admins-Mac:test admin$ ls -l

total 0

drwxr-xr-x@  4 admin  staff  136 Apr 15 16:02 build

drwxr-xr-x  14 admin  staff  476 Apr 22  2013 test

drwxr-xr-x@  5 admin  staff  170 Apr 22  2013 test.xcodeproj

admins-Mac:test admin$ find build|grep test.app$

build/Release-iphonesimulator/test.app

 

好了,这下可以写测试的python脚本了,我就在这个目录下建立了一个test1.py。因为代码中需要指明app位置,所以留心自己的脚本所在位置和app文件的相对位置。


---------- 真机------------

1、确保真机连接电脑。

2、Terminal开启appium:

appium -U xxxxxxxxxxxxxxxxxx --app com.xxx.xxxx

3、开启新的Terminal,cd进入测试脚本文件夹,运行测试脚本:python ios_simple.py


———————————————————————

3、必看问题一览

———————————————————————

1针对appium1.3.7真机调用IOS设备的坑:

error

org.openqa.selenium.SessionNotCreatedException: A new session could not be created. (Original error: Could not initialize ideviceinstaller; make sure it is installed and works on your system) (WARNING: The server did not provide any stacktrace information)

Command duration or timeout: 2.45 seconds


修改方法:

说明appium路径下调取设备时出现问题,需要替换node_modules文件夹下的nodeidevice文件。应该是appium1.3.7下的bug,我替换的是appium1.3.3版本的/usr/local/lib/node_modules/appium/node_modules/nodeidevice文件。appium1.3.4本版也不支持(更新到1.3.4版本尝试过)。

下载appium1.3.3nodeidevice链接:

http://download.csdn.net/detail/ouyangtianhan/8671793


再次在dos中运行appium &就可以调取真机了,呵呵,成功。。。。。


注意事项:

针对ios8及以上系统执行自动化时,需要打开手机设备:Settings > Developer

PS:

node-idevice-1.3.3 下载地址:点击打开链接

test-sample-code 点击打开链接 


Appium APP版本教程:http://www.blogjava.net/qileilove/archive/2014/05/08/413429.html



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。