自己主动化測试的优点:

1、自己主动化能够自己主动測试,不须要人的干预。同一时候还能够不断地反复某一个动作。

2、自己主动化測试在添加了新的功能之后。还能够回归到原理的功能,使其原来的功能不会受到影响。

缺点:会受到測试系统和project师的制约。

自己主动化測试脚本的执行有可能受到不同层次的限制与制约。

大概就是主要两个方面:

1、系统级别的执行机制,并非全部的程序(中的)代码能够自己主动执行,由于ios中的程序的之间总是存在着一些权限。这个就是要考虑到安全级别的问题。签名

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

hereBy

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

(下载别人的应用是不能够用来測试UIAutomation的。由于签名的不匹配。所以要获取源码才干够在自己的真机上面測试)

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

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

假设是xib的时候:例如以下图

二、对脚本的编辑:

查看測试结果他们之间的控件关系:图:能够看到输出控件树的

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" height="296" width="644">

它们的关系:UIAtarget ——> UIAplication ——>UIAWindow ——> UINavigationBar——>UIButton(add)。这个是add这个button的控件树,其它的控件也是能够的。

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

var addButton = UIAtarget().localTarget().frontMostApp().mainWindow().navigationBars()[0].buttons()[1];

addButton.tap();

//我们能够看到这些空间的关系。由于用的是javascript的语法,也就是用javascript语言来进行測试:

相同。我们能够通过名字来获取空间:(这些控件的名字就是开发的时候给定的名字:我们能够通过測试的树图中看到有关控件的名字)(由于数组的方式的可读性和可维护性比較差)

var addButton = UIAtarget().localTarget().frontMostApp().mainWindow().navigationBars()["Recipes"].buttons()["Add"];

UIAutomation使用測试入门的更多相关文章

  1. 做QA的日子——iOS測试入门(四)

    坦言,做QA的这半年我没有成长,就算有成长也非常少,我非常难过.和身边的人讲事实上并没有谁能真正理解自己的难过,事实上还是自己不够努力.对自己不够狠,以前认为自己不够幸运,想有一个更好的指路人,事实上 ...

  2. [单元測试]_[VC2010使用gtest单元測试入门]

    场景: 1. gtest作为C++的单元測试工具非常优秀了,它集成了非常多标准assert所没有的功能,比方让流程继续运行的EXPECT,仅仅測试特定測试用例的--gtest_filter, 输出xm ...

  3. Mahout学习之Mahout简单介绍、安装、配置、入门程序測试

    一.Mahout简单介绍 查了Mahout的中文意思--驭象的人,再看看Mahout的logo,好吧,想和小黄象happy地玩耍,得顺便陪陪这位驭象人耍耍了... 附logo: (就是他,骑在象头上的 ...

  4. Marlin固件之—:基础入门与測试

    一.Marlin的简介 Marlin固件是一个3D打印的开源固件,3D打印固件有很多,Marlin最为健全和强大,当然相对也会复杂一些.使用Gcode控制爱.Gcode是数控机床等工控控制使用范围较广 ...

  5. Tensorflow MNIST 数据集測试代码入门

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50614444 測试代码已上传至GitH ...

  6. [WebGL入门]十九,遮挡剔除和深度測试

    注:文章译自http://wgld.org/,原作者杉本雅広(doxas),文章中假设有我的额外说明,我会加上[lufy:],另外.鄙人webgl研究还不够深入,一些专业词语,假设翻译有误.欢迎大家指 ...

  7. LoadRunner使用入门 进行Webservice负载測试

    1.什么是LoadRunner LoadRunner是HP公司的一款付费工具,该工具是一种预測系统行为和性能的负载測试工具. 通过模拟上千万用户实施并发负载来确认和查找问题. 2.什么是负载測试 通过 ...

  8. 移动App測试实战:顶级互联网企业软件測试和质量提升最佳实践

    这篇是计算机类的优质预售推荐>>>><移动App測试实战:顶级互联网企业软件測试和质量提升最佳实践> 国内顶级互联网公司測试实战经验总结.阿里.腾讯.京东.携程.百 ...

  9. 软件測试系统文章(文件夹&amp;链接在此)

    前言 我会在此账号上写一系列关于软件測试的文章,故在此置顶软件測试系列文章的文件夹和链接,以方便大家阅读! 文件夹 软件測试系列之入门篇(一) 软件測试系列之了解篇(二) 软件測试系列之黑白盒(三) ...

随机推荐

  1. C# 导出Excel的示例

    Excel知识点.  一.添加引用和命名空间 添加Microsoft.Office.Interop.Excel引用,它的默认路径是C:\Program Files\Microsoft Visual S ...

  2. [转]构建Python+Selenium2自动化测试环境(一)

    很久没有了解自动化了,最近发现项目中沉淀了很多东西,回归测试效 率很低,所以必须要考虑构建自动化来提供各个环节的小效率.由于忙于需求以及产品的流程规范,现在对于测试技术方面的研究也相对少了很多.不过不 ...

  3. HDU1007 TLE代码和AC代码对比

    这题卡了一天,上午开始看算法导论,然后实现了,一开始是wa,后来TLE,由于我开始的实现方式比较笨,而且在递归调用的时候很是混乱,用了好多数组.导致我的代码不断的出问题.具体是算法导论33-4. 后来 ...

  4. 九度oj 题目1533:最长上升子序列

    题目描述: 给定一个整型数组, 求这个数组的最长严格递增子序列的长度. 譬如序列1 2 2 4 3 的最长严格递增子序列为1,2,4或1,2,3.他们的长度为3. 输入: 输入可能包含多个测试案例. ...

  5. shit layui & bugs

    shit layui & bugs use is not useful at all! http://www.layui.com/demo/form.html layui.use([" ...

  6. 在VMWare下为CentOS设置静态IP通过NAT访问外网

    一.背景 安装好的CentOS系统默认是通过DHCP自动分配地址来共享主机的IP以达到访问外网的目的,但是因为莫名的原因无法访问外网.只好改为通过静态IP的方式访问外网. 二.操作步骤 2.1 确认开 ...

  7. 染色(bzoj 2243)

    Description 给定一棵有n个节点的无根树和m个操作,操作有2类: 1.将节点a到节点b路径上所有点都染成颜色c: 2.询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“ ...

  8. EC++学习笔记(四) 设计与声明

    条款18:让接口容易被正确使用,不易被误用 必须考虑客户可能做出什么样的错误(防御式编程)std:shared_ptr会自动使用它的"每个指针专属的删除器",消除了"cr ...

  9. android悬浮窗口的一些说明

    1.xml文件里的权限申请 <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" ...

  10. hdu - 3836 Equivalent Sets(强连通)

    http://acm.hdu.edu.cn/showproblem.php?pid=3836 判断至少需要加几条边才能使图变成强连通 把图缩点之后统计入度为0的点和出度为0的点,然后两者中的最大值就是 ...