Appium mac 下 appium 的安装 (for ios auto test)

zhangyang · 2014年08月27日 · 4533 次阅读
本帖已被设为精华帖!

首先来看一下官方网站上给出的安装的教程,颇为简单:

但,只是看着简单而已,自己搭建的过程中可能会遇到各种问题,比如权限的问题等。我现在来说说我的搭建步骤:

1.brew install node 想要生效首先必须先安装 homebrew 才行,所以第一步应当是检查自己是否已经安装 homebrew
在终端中输入 brew -v 如果出现版本信息则说明已经安装,如果提示命令不存在则说明未安装,安装 homebrew 的方 法如下:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
安装完成后 在终端输入 brew -v 命令检查是否安装正确,出现版本信息说明安装成功

2.在终端输入 brew install node 命令安装 node.js 安装完成后在终端输入 node -v 命令检查是否安装成功,出 现版本信息说明安装成功。

3.在终端输入 npm install -g appium 安装 appium 这一步可能会出现目录权限问题。此时最容易想到到做法是在 命令前面加个 sudo 我只能说此法差矣,这样安装会导致 appium 在使用时出现问题。我一开始就是这么干的,结果就 不多说了,不能用。我后来的解决方法是把/usr/local 目录下的所有子目录都改了权限,参照网上别人的做法是 chmod 644 /usr/local 即可,这种方法有点一刀切的意思,也可能为安全问题埋下隐患,所以如果对这个目录的安 全有要求,请慎重。

4.安装 appium client 上面给出的命令是 npm install wd 这应该是老版本的安装方法。我使用的 appium 版本是 1.1.0 使用这个命令安装后运行 1.1.0 示例脚本报错。我后来采用的安装方法如下:由于我是用 python 来编写脚本 的,所以去 github 上的 appium 分支下下载了 python-client-master,然后在终端下进入该目录,输入 python setup.py install 命令进行模块的安装。安装完成后再运行示例程序就正常了。

5.等到 appium-client 安装完成后就可以启动 appium 了,启动之前可以通过再终端输入 appium-doctor 来检查一下 appiuum 的依赖是否都已经安装好且没有问题,如果没有问题都话,应该是这个样子的:

上图说明针对 ios 自动化测试的依赖都正常。由于笔者并不需要在 mac 上进行针对 android 的自动化测试,所以 android 的错误忽略,如果读者需要在 mac 上进行 android 的自动化测试或者想要了解,请参考 appium 给出的官方文 档进行设置,给出官方文档的地址如下:
http://appium.io/documentation.html?lang=zh
好了检查没问题就可以启动 appium 了,在终端输入 appium& 即可启动 appium,在这里多说一句,直接输入 appium 也可以启动 appium,只是加个&可以显示 appium 的 pid,而不加则不会显示。另外 appium 后面可以跟上参 数,例如 在终端输入 appium -lt 120000 表示设置模拟器的超时时间为 2 分钟即 120000ms(默认 90000ms) appium 还可以跟上其它很多参数,具体请参看官方文档,上面有详细的参数使用说明,地址上面已经给出。appium 启 动成功后显示如下:

至此,appium 已安装完成。接下来就可以编写脚本运行测试啦~
运行示例程序的方式如下(以运行 python 示例程序为例):
从这个地址下载 appium:
https://github.com/appium/appium
下载后在终端中进入 appium-master/sample-code/apps/TestApp 目录下通过如下命令编译生成示例程序:
xcodebuild -sdk iphonesimulator 当看到BUILD SUCCEEDED则说明编译成功
成功后在终端进入 appium-master/sample-code/examples/python 目录下,然后在 appium 运行的情况下输入
python ios_simple.py 运行示例脚本即可看到脚本运行,示例脚本会运行两个 case,一个是测试滑动效果,一个 是测试两数相加,如图:

这是我自己的文章,写在我的网易博客上的,拷过来的,这样没问题吧? 另外文笔不好,写得可能不是太好, 欢迎大家拍砖吧

共收到 20 条回复 时间 点赞

顶一下,下班回去就装起来。。谢谢,最近正在弄 IOS 的环境.

@hobbs 楼主你好,能详细点图文介绍下,第三步怎么 安装 npm 吗?
我在 MAC 上头 2 步安装很顺利,在运行第三步的指令时,它提示没有 npm 这个 command。
新手啊,以前没用过 mac :(

#3 楼 @seasoncool2011 在上班,比较忙。话说第三步不是安装 npm 的,是安装 appium 的,如果你第二步成功的话没理由找不到这个命令啊,你把你的 npm 命令所在目录的权限改下试试看,应该是在/usr/local 下吧,你自己找找看

@hobbs 好的额,谢谢哈。。。。不水~~~

#5 楼 @seasoncool2011 。。。。。。。。。。。。。。。。。。。。。我属于半桶水

第三步,如何在安装完后,将/usr/local 的权限改回来呢?

#7 楼 @75281920 。。。这个我都没改,我也不知道是不是机器问题导致我需要改,难道你们也是必须要改目录权限才能使用?我在公司 mac 上要改,但是在自己 mac 安装的时候就是没有改的,也能用;哎我也不知道具体原因,求大神指点啊,改目录权限确实不是什么好办法。。。

我前面的步骤执行都正常 最后一步执行示例脚本时提示 No Module named appium.这个应该不是 appium 没安装吧。服务都可以启。请问这个问题怎么解决?

#9 楼 @kyotokyoking 已经解决 需要下载 appium python

#10 楼 @kyotokyoking 恩,第 4 点就是说的这个问题

chmod 644 /usr/local
这个命令执行后不仅没有解决权限问题,安装 appium 的时候提示-bash: /usr/local/bin/npm: Permission denied

执行例如 node -v 这样的命令也提示也提示 Permission denied 了,求解决

#12 楼 @ceiba3933 你命令都不会用,照猫画虎。 你看看提示你的,是他的子目录。

加& 表示后台执行
不是为了显示 pid

#14 楼 @wongidle 你说的这个我也看到过,不过我看到的区别就是一个会显示 pid,一个不会显示,不过还是谢谢指正

你好,我进行到第三步的时候,出现了这个问题,麻烦老师帮忙看看是什么问题呢?

@android_pig 你好,我也遇到这个问题,你怎么解决的呢

1.npm uninstall -g appium
2.chmod -R 777 /usr/local
3.npm install -g appium
因为,权限问题所至。我是这样解决的.😂


楼上的方法试过了,现在还是有这个问题

匿名 #20 · 2017年09月14日
lalala 回复

chmod 没成功,用 sudo chmod -R 777 /usr/local,输入密码,再 npm install -g appium 一次试试

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册