一、 简介

1.1摘要

本人测试新人,最近在搞ios客户端的自动化,准备采用robotframework-appium来实现自动化测试,一边学习一边总结,此安装说明文档是基于mac系统10.11版本,第一次发经验贴,说明中如有错误纰漏请不吝指教。
—————以下属个人理解,有错误请各位指正,想直接进入主题的,请直接跳到1.2章节————
安装Robotframework-Appium框架,大致划分为三个部分(1)基础软件的安装,主要包括Xcode,ios模拟器,command line tools等(2)Appium的安装(3)robotframework的安装。一般来说安装好(1),(2)就可以进行自动化测试,具体的方式是写自动化测试脚本(可采用python,java等语言,脚本中包含测试用例实现步骤的代码以及对每一个测试case的断言)通过appium server去驱动模拟器/真机中的app,执行所编写的测试用例并进行判断。
目前robotframework比较热门,主要它相对上面提到的方式个人感觉主要有两点优势:(1)编写测试用例简单化,基本不需要写代码。rf框架采用“关键字”方式编写测试用例,比如它把“向某文本框中输入文本”这一个本来需要写几行代码的实现的过程封装成关键字“文本框输入文本”(在此只是举例,具体关键字的名字需要查询),这样我们直接调用该关键字,然后传入一些必要的参数,如文本框的id、你要输入的文本等,就可以实现该步骤。(2)用例的维护及多人协作较方便。如果采用appium写脚本,测试用例就是一大推代码,如果不是自己写的话阅读起来非常麻烦,而且后期添加测试用例非常麻烦。而rf采用关键字的方式(也支持中文关键字),用例写起来很简洁,易阅读。而且rf提供的UI界面ride为编写用例的模块化提供便利,后期扩充用例比较简单,利于维护。
总之rf相对于单纯用Appium实现自动化还是有很大优势的,当然其实并没有改变自动化实现的本质,感觉是在appium基础上又做了更高层的封装,让使用者操作起来更简单。当然自动化不是万能的,一些场景很难依靠工具或者框架去判断是否达到了预期,比如音视频的通话质量等,很多场景目前还是必须依赖手工测试,所以自动化用例最好覆盖的场景是(1)冒烟测试(2)编写主干流程的测试用例,用例不要写的太细,用于提高版本回归测试的效率。

1.2 参考资料

1.参考了论坛中@debugtalk 的关于appium搭建的帖子,收货很大。
2.谷歌百度

二、安装步骤

前面的话:
(1) 后面的安装步骤基本涵盖了全部所需要的安装内容,但并不是事无巨细,有些简单软件的安装例如xcode,command line tools等,大家自行百度谷歌即可,安装比较简单,一般就是一句命令行的事。
(2) 在使用mac 终端中输入命令行安装软件的方式,遇到最多的问题就是权限问题,如果你输入某安装指令后,终端中提示“… not permitted..”之类的就是很可能说明要管理员权限,这时候在 安装命令前面加上sudo,然后输入开机密码即可完成安装。
(3)采用命令行安装是一种在线的安装方式,如果有些软件无法下载,则需要FQ,或者搜一下别的安装方式,如采用下载安装包等方式进行安装。再次就不做具体介绍了,一般安装都可以通过命令行或者安装包至少两种方式安装,下文中大部分采用命令行安装方式。

2.1基础工具的安装

(1)mac系统准备<=10.11,笔者是在10.11版本安装的。
(2)Homebrew安装,终端中输入:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
(3)安装xcode。appstore中直接下载
(4)模拟器,用的xcode自带的默认模拟器,9.3版本。
(5)CommandLine Tools安装。打开终端,输入xcode-select—install,如遇权限问题输入sudo xcode-select—install。
(6)python 2.7安装。Mac中自带python2.7的。检测方法终端输入python --version,会返回python 2.7.X版本号。如果没有请谷歌如何安装python。
(7)pip安装,终端中输入:(sudo)easy_install pip 。easy_install和pip都是用来下载安装Python一个公共资源库PyPI的相关资源包的,在Python2.7的安装包中,easy_install.py是默认安装的,而pip需要我们手动安装。

2.2 Appium的安装

(1)node.js和npm的安装,终端输入:(sudo)brew install node。
(2)appium环境检测工具的安装,终端输入:npm install appium-doctor –g。安装成功后,终端输入:appium-doctor –ios。终端会核对每项安装appium的准备环境,缺什么对应安装什么即可,正常情况下安装上面的安装步骤执行完后,输入doctor命令,终端最后会输出:AppiumDoctor Everything looks good, bye!
(3)安装appium server。我们平时所说的appium就是它!方法很多推荐使用gui安装办法。安装步骤是:
打开网址https://bitbucket.org/appium/appium.app/downloads/.dmg的最新版本下载,在mac上双击安装即可。笔者下载的是appium-1.5.3.dmg。,找到后缀名为
(4)Appium Client Libraries。终端输入:(sudo)pip install robotframework-appiumlibrary。上面那个是官方提供的,另外建议安装另一个依赖库,终端输入(sudo)pip install robotframework-mobilelibrary,这个是对robotframework-appiumlibrary的扩展,并且许多关键字的说明都是中文。

2.3 RobotFramework的安装

(1)安装wxpython。终端输入:brew install wxpython。
安装这个的时候花费了不少精力。Wxpython对系统中一些包的版本有要求。例如我在安装wxpython时,终端提示pip list中的”six”这个东西的版本过低,我用pip命令进行更新该文件: pip install -U six,但升级也失败。后来谷歌百度了解到,Mac系统在10.11版本启用了更高的安全性保护机制:系统完整性保护System Integrity Protection (SIP)。简单来讲就是更加强制性的保护系统相关的文件夹。开发者不能直接操作相关的文件内容。
所以做法是1.关闭SIP 2.更新系统相关文件pip install -U XXXX 3. 恢复SIP,保证系统安全。
关闭的SIP的步骤是:
1.点击Mac电脑的苹果图标
2.选择 重新启动
3.按住 command+R,直到进入还原模式
4.选择实用工具,然后点击 终端
5.输入 csrutil disable 按下回车
6.重启电脑。这样就将“SIP“关闭了
恢复的SIP的步骤是:
1.点击Mac电脑的苹果图标
2.选择 重新启动
3.按住 command+R,直到进入还原模式
4.选择实用工具,然后点击 终端
5.输入 csrutil enable 按下回车
6.重启电脑。这样就将“SIP“关闭了
(2)安装RobotFramework
(sudo)pip install robotframework==2.9.2
(3)安装RIDE
(sudo)easy_install robotframework-ride

此时就完成了RF-Appium的安装,你可以在终端中输入pip list查看安装的各个包,正常情况下,终端输出中应包含robotFramework(版本号),robotFramework-ride(版本号),robotframework-appiumlibrary(版本号),robotframework-mobilelibrary(版本号),wxpython(版本号)等。
在终端中输入:ride.py就运行启动了了rf框架界面了。

Appium robotframework-appium (ios 客户端测试)环境搭建的更多相关文章

  1. robotframework+seleniumlibrary自动化测试:测试环境搭建

    robotframework是由python编写的自动化测试框架,使用robotframework需要安装 python库 python 和 robotframework 的下载地址都可百度到 环境搭 ...

  2. 【转1】Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结

    Appium 1.6.3 在Xcode 8, iOS 10.2(模拟器)测试环境搭建 经验总结 关于 Appium 1.6.3 在Xcode 8, 10.2 的iOS模拟器上的问题很多,本人也差点放弃 ...

  3. 『与善仁』Appium基础 — 14、Appium测试环境搭建

    目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...

  4. 【转2】Appium 1.6.3 在Xcode 8 (真机)测试环境搭建 经验总结

    Appium 1.6.3 在Xcode 8 (真机)测试环境搭建经验总结 关于 Appium 1.6.3 在Xcode 8, 1真机上环境搭建问题更多,写此文章,供大家参考,让大家少走弯路. 在开始i ...

  5. 『与善仁』Appium基础 — 1、Android系统的测试环境搭建

    目录 1.Android操作系统简介 (1)Android系统诞生 (2)Android系统的结构 (3)Android测试环境搭建整体思路 2.Java环境安装 (1)JDK8下载 (2)安装JDK ...

  6. RobotFramework测试环境搭建记录

    Robotframwork测试环境搭建记录 1.安装Python2.7(https://www.python.org/) 在环境变量path中加入“C:\Python27” 安装后的验证方法为在命令行 ...

  7. Appium+Robotframework实现iOS应用的自动化测试

    Appium+Robotframework实现iOS应用的自动化测试 连接地址: 地址:https://blog.csdn.net/wd168/article/month/2016/06 1.http ...

  8. https,https的本地测试环境搭建,asp.net结合https的代码实现,http网站转换成https网站之后遇到的问题

    一:什么是https SSL(Security   Socket   Layer)全称是加密套接字协议层,它位于HTTP协议层和TCP协议层之间,用于建立用户与服务器之间的加密通信,确保所传递信息的安 ...

  9. 【转】https,https的本地测试环境搭建,asp.net结合https的代码实现,http网站转换成https网站之后遇到的问题

    正需要这个,写的很好,就转过来了 转自: http://www.cnblogs.com/naniannayue/ 一:什么是https SSL(Security   Socket   Layer)全称 ...

随机推荐

  1. 重构改善既有代码设计--重构手法01:Extract Method (提炼函数)

    背景: 你有一段代码可以被组织在一起并独立出来.将这段代码放进一个独立函数,并让函数名称解释该函数的用途. void PrintOwing(double amount) { PrintBanner() ...

  2. [Swing]树形结构的实现

    一般步骤: 1.建立根节点 private DefaultMutableTreeNode root = new DefaultMutableTreeNode("根节点"); 2.建 ...

  3. 20155117王震宇 2016-2017-2 《Java程序设计》第八周学习总结

    教材学习内容总结 正则表达式 正则表达式是记录文本规则的代码 元字符 ^ :^会匹配行或者字符串的起始位置,有时还会匹配整个文档的起始位置. $ :$会匹配行或字符串的结尾. \b :不会消耗任何字符 ...

  4. [POI 2008&洛谷P3467]PLA-Postering 题解(单调栈)

    [POI 2008&洛谷P3467]PLA-Postering Description Byteburg市东边的建筑都是以旧结构形式建造的:建筑互相紧挨着,之间没有空间.它们共同形成了一条长长 ...

  5. VC连接access

    (1)首先拷贝 c:\program files\common files\system\ado\ 目录中的 msado15.dll 文件到项目中. (2)在VC中加入DLL,具体方法如下: (3)创 ...

  6. .ui/qrc文件自动生成.py文件

    前天PL让我们做一个从手机里手机一些数据导出到excel文件里的Tool. 让我们用python去写一个.但是我们都没有学过python..呵呵! 然后昨天看了一些文档.做ui时还需要把图片写入qrc ...

  7. keypress 、keydown、keyup后触发回车

    1.keypress .keydown.keyup的区别 keypress表示键盘按下的全过程,只有按下任意字母数字键(后退.删除等系统功能键无效)时才触发,捕获到的keyCode区分大小写 keyd ...

  8. iphone6设置企业qq

    1.首先要确定foxmail的账户服务器信息,右上角-账户账户管理-服务器设置 2.iphone端:

  9. arch安装完成之后不能使用笔记本自带的无线网卡

    问题描述如下 我笔记本的wifi网卡识别不了,不知道为什么?? 使用ifconfig -a 只列出了有线网卡以及外接的无线网卡如下 enp4s0f1: flags=<UP,BROADCAST,M ...

  10. Cesium 初始化Viewer

    <pre name="code" class="javascript"><script> var viewer = new Cesium ...