注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

风之云的足迹

点击这里添加博客描述

 
 
 

日志

 
 

Appium-实现iOSUI自动化测试运行在不同版本iOS模拟器上  

2013-12-17 17:11:43|  分类: 手机自动化测试 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在使用苹果自带的UIAutomation的工具运行iOSUI自动化测试时会调用苹果自带的instrument命令,通过instrument启动运行时默认会启动当前使用的Xcode版本安装的最新版本的SDK,导致在iOS UI测试中在多SDK版本运行自动化测试存在难度。
我们使用Appium进行iOS端的UI自动化测试,Appium底层也是通过UIAutomation的instrument来驱动运行的,所以也存在相同的问题,那下面就介绍一下如果通过简单封装配置来实现自动化在多SDK版本中运行UI自动化测试用例的一种思路,如果有更好的思路也欢迎交流。

开始之前首先介绍一下我们要用到关键的命令行
sudo xcode-select -switch /Application/Xcode5.0.app

通过上面的命令可以实现切换当前Mac中默认使用的Xcode版本,同时不同的Xcode版本会默认自带不同版本的的iOS模拟器,比如Xcode4.6.3自带的最高版本模拟器为6.1,Xcode5.0自带最高版本模拟器为7.0,通过切换不同的Xcode版本可以使本次运行默认启动对应Xcode中最新版本的SDK。那下面针对这个命令展开具体如何来实现。

1、首先给Mac开启sudo不需要输入密码设置
因为上面命令行是需要输入sudo的,默认的话sudo是需要输入密码的,自动化测试的时候每次输入密码不方便,如果需要配置密码的方式输入的话也不安全,可能会导致密码泄露,所以安全的方式是在Mac中创建一个用户运行iOSUI自动测试,该用户sudo的时候不需要输入密码。 下面介绍如何进行配置
一、配置启用Mac中的root用户(注意:root用户的密码一定要保管好不能泄露)
    详细参考:http://support.apple.com/kb/HT1528?viewlocale=zh_CN
  1. 从 Apple 菜单中选取系统偏好设置...
  2. 显示菜单中选取用户与群组
  3. 点按锁图标并使用管理员帐户进行鉴定。
  4. 点按“登录选项...”。
  5. 点按右下方的“编辑...”或“加入...”按钮。
  6. 点按“打开目录实用工具...”按钮。
  7. 点按“目录实用工具”窗口中的锁图标。
  8. 输入管理员帐户名称和密码,然后点按“好”。
  9. 编辑菜单中选取启用 Root 用户
  10. 在“密码”和“验证”字段中输入您想要使用的 root 密码,然后点按“好”。


二、root用户通过修改sudoers实现用户sudo时不需要输入密码
详细参考:http://romkey.com/2008/11/08/use-sudo-without-a-password-on-your-mac/
1、命令行下输入su,输入密码,启动root权限登录
2、chmod +w /etc/sudoers 开启写权限
3、vi /etc/sudoers 进入编辑文件
4、USERNAME ALL=(ALL) NOPASSWD:ALL 在文件中加入以上文本,为你需要的用户添加权限(当前用户的USERNAME可以使用who命令查看)
5、保存文本
6、chmod -w /etc/sudoers 删除文件的写权限
通过上面两步配置后当前用户只需sudo权限可以不需要输入密码了。


2、用户在Mac机器中安装不同版本的Xcode
 可以从Mac官网下载不同版本的Xcode
安装不同版本的Xcode,默认是安装在/Applications/目录下,安装完成后可以在目录下重命名Xcode为指定的版本,方便后续切换
比如:Xcode4.6.3,Xcode5.0


3、基于Appium简单封装
     使用Appium,编写用例是基于selenium webdriver API的,我们选用了Java语言和TestNG框架,为了提高用例运行的稳定性,我们简单封装了一下每次运行前都会重启appium的server,防止运行中server挂了,则全部用例运行失败。
另外为了实现运行多版本的模拟器,用户在config文件中配置当前运行使用的xcode地址,比如apppath=/Application/Xcode5.0.app ,在启动运行之前获取配置选项的值,封装后通过自动运行sudo xcode-select -switch /Application/Xcode5.0.app 命令实现切换当前运行的xcode,从而实现运行指定版本的模拟器,需要切换运行不同版本模拟器,只需要修改一下配置中的apppath即可。




  评论这张
 
阅读(1198)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018