UIAutomation使用测试入门

自动化测试的好处:

1、自动化可以自动测试,不需要人的干预。同时还可以不断地重复某一个动作。

2、自动化测试在增加了新的功能之后,还可以回归到原理的功能,使其原来的功能不会受到影响。

缺点:会受到测试系统和工程师的制约。


自动化测试脚本的运行有可能受到不同层次的限制与制约。

大概就是主要两个方面:

1、系统级别的运行机制,并不是所有的程序(中的)代码可以自动运行,因为ios中的程序的之间总是存在着一些权限,这个就是要考虑到安全级别的问题。签名

2、应用程序级别的限制主要来自于对控件的识别。


hereBy

1、被测试的应用程序必须是在苹果官方的developer中签名,或者只是在模拟器上测试。

(下载别人的应用是不可以用来测试UIAutomation的,因为签名的不匹配,所以要获取源代码才可以在自己的真机上面测试)

2、测试的过程中要处理UI控件的可访问性:

eg:代码写的时候要设置相应的可访问属性:mytextfieldl.accessbilityEnabled = YES;

如果是xib的时候:如下图



二、对脚本的编辑:

查看测试结果他们之间的控件关系:图:可以看到输出控件树的

它们的关系:UIAtarget ——> UIAplication ——>UIAWindow ——> UINavigationBar——>UIButton(add)。这个是add这个按钮的控件树,其他的控件也是可以的。

然后既可以通过这个结构来获取这“add”名字的按钮的控件,进行“日志输出”等等操作。

var addButton = UIAtarget().localTarget().frontMostApp().mainWindow().navigationBars()[0].buttons()[1];
addButton.tap();
//我们可以看到这些空间的关系。因为用的是javascript的语法,也就是用javascript语言来进行测试:
同样,我们可以通过名字来获取空间:(这些控件的名字就是开发的时候给定的名字:我们可以通过测试的树图中看到有关控件的名字)(因为数组的方式的可读性和可维护性比较差)
var addButton = UIAtarget().localTarget().frontMostApp().mainWindow().navigationBars()["Recipes"].buttons()["Add"];









  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值