慕测 移动应用测试——实用技巧函数总结
小白第一次参加慕测的移动端测试,一开始让各种环境配置给搞晕了,差点放弃,关于环境安装我想等下回在写篇文章,给那些想参加又无从下手的人些帮助。这次文章就先讲讲几个做题的技巧,毕竟明天就初测了,说不定有的人还能用上 [嘻嘻~]
这篇文章主要讲一下几个实用的代码:
目录
- 1. 延时
- 2. ID定位
- 3.通过class的内部定位(text法 和 index法)
- ① text法
- ② index法
- 4. 通过class的位置定位(坐标) [ 推荐!]
- 5. 返回上一页 [ 推荐!]
- 6.输入文本信息 [ 推荐!]
——————————————————————————
1. 延时
//此方法用于防止页面未加载完的情况导致的bugThread.sleep( X );
其中 X 为延时的时间,单位为毫秒(ms)
当你测试的时候通常会看着模拟器界面对吧(我用的是电脑模拟器,当然有的人用的是真机,这是个好习惯),加入有一步,你写的代码没成功运行,而且卡住的位置页面还在加载,那就试试加个延时函数吧,设个一秒两秒的说不定就成功了。
亲测是可以碰碰运气的,毕竟有的时候确实就是因为页面没有加载完,所以导致下一步点击未执行。哪怕你看着你想点击的位置是一开始就加载出来的,在做练习题的时候我就遇到过这样的问题,明明我想点的位置一开始就加载出来了,只是其他部分还在加载,这个时候加个延时函数就通过了
而且合理的运用延时函数可以让你的测试过程看起来舒服很多,让你在检查测试的时候能看出来进行到哪一步了,不然有时候画面一闪就测试过去了你甚至都不知道这进行到哪一步了。。。
2. ID定位
//此方法通过目标的ID来获取标签,并点击driver.findElementById("X").click();
其中 X 为目标标签的ID(别忘了在 X 外面加上双引号,因为它是字符串~),
PS:往后的代码我都会写一行完整的方便新手上手,可能一行有几部分组成,请仔细阅读前面的注释和后面的解释,望小白不要误会
例如:
driver.findElementById("com.luojilab.player:id/btn_agree").click();
这行代码就是获取ID为“ com.luojilab.player:id/btn_agree ” 的标签并点击。
这个方法不太推荐使用,当页面简单标签少的时候还算好使,但当后面页面复杂起来后,你会发现有很多ID相同的标签,这个时候这个代码会bug,这里写出了只是因为一开始小白上手需要个过程,可以先用这个用一用试试。
3.通过class的内部定位(text法 和 index法)
① text法
//此方法通过目标的 class和 text来进行双重定位,并点击driver.findElementByXPath("// class [@text='name']").click();
其中class处写标签的class名(别忘了前面的 “ // ”),name处写标签的text名(单双引号别弄混了)
例如:
driver.findElementByXPath("//android.widget.TextView[@text='开始']").click();
这行代码就是获取class为 “ android.widget.TextView ” 且text为 “ 开始 ” 的标签并点击。
② index法
//此方法通过目标的 class和 index来进行双重定位,并点击driver.findElementByXPath("// class [@index=num]").click();
其中class处写标签的class名(别忘了前面的 “ // ”),name处写标签的index名
例如:
driver.findElementByXPath("//android.widget.TextView[@index=1]").click();
这行代码就是获取class为 “ android.widget.TextView ” 且index为 “ 1” 的标签并点击。
其中index方法不推荐使用,因为我在练习的时候有遇到过bug,而且没解决,可能是重名?(思考ing)尽量使用第一种方法吧,毕竟一个页面同class又同text 基本是不太可能,推荐使用
4. 通过class的位置定位(坐标) [ 推荐!]
//此方法通过目标的 class和 坐标bounds来进行双重定位,并点击driver.findElementByXPath("// class [@bounds='[x1,x2][y1,y2]']").click();
其中class处写标签的class名(别忘了前面的 “ // ”),后面bounds后内容填对应标签的bounds坐标(别忘了外面要加单引号!)
例如:
driver.findElementByXPath("//android.widget.RelativeLayout[@bounds='[144,472][288,569]'] ").click();
这行代码就是获取class为 “ android.widget.RelativeLayout ” 且bounds为 “ [144,472][288,569] ” 的标签并点击。
真的真的推荐这个测试方法,只要写对了基本不会有bug(不像上面那几个,都会有对应的限制)。这个用法只有一个需要注意的地方,就是bounds不是固定值,它会随着你的页面变化而变化(比如手机上下滑动,bounds就会变化)这是个坑,不要认为定位嘛坐标嘛,就一定是固定的(我就踩过这个大坑被坑惨,写了二十几行全都得改 QAQ)。所以用这个方法时,一定要保证测试过程中手机页面跟你编写代码时的页面进行步骤和位置相同,除此外这应该是最万用的方法了(棒!)
5. 返回上一页 [ 推荐!]
//此方法用于返回上一个页面driver.sendKeyEvent(AndroidKeyCode.BACK);
此函数用法是固定的, 很好用!很好用!很好用!x3
此方法类似于手机的返回按钮,你就想像自己在用手机,当有返回上一页的测试过程时是不是就想点手机的返回键(斜眼笑),此时就用这个方法吧,这个方法我是没遇到bug,虽然不代表没有,但起码好使是真的
6.输入文本信息 [ 推荐!]
//此方法用于在定位的地方输入文本信息.Sendkeys("content");
此函数写在定位之后,负责输入文本信息,content 处就写要输入的文本信息(注意双引号“ ”,因为是字符串)
例如:
driver.findElementById("com.luojilab.player:id/btn_agree").Sendkeys("移动应用");
这行代码就是获取ID为“ com.luojilab.player:id/btn_agree ” 的标签位置并输入“移动应用”。
这个函数用法是必须要会的,输入文本信息是很重要的一个测试,双引号不要忘就好。
最后,感谢认真阅读完的你,如果有任何错误欢迎指出,我愿意倾听任何建议,交流会让我们共同进步,谢谢!
慕测 移动应用测试——实用技巧函数总结相关推荐
- 《BackTrack 5 Cookbook中文版——渗透测试实用技巧荟萃》—第1章1.3节安装BackTrack到USB驱动器...
本节书摘来自异步社区<BackTrack 5 Cookbook中文版--渗透测试实用技巧荟萃>一书中的第1章1.3节安装BackTrack到USB驱动器,作者[美]Pritchett Wi ...
- 《BackTrack 5 Cookbook中文版——渗透测试实用技巧荟萃》目录—导读
版权声明 BackTrack 5 Cookbook中文版--渗透测试实用技巧荟萃 Copyright @ Packt Publishing 2012. First Published in the E ...
- 《BackTrack 5 Cookbook中文版——渗透测试实用技巧荟萃》—第1章1.2节安装BackTrack到硬盘...
本节书摘来自异步社区<BackTrack 5 Cookbook中文版--渗透测试实用技巧荟萃>一书中的第1章1.2节安装BackTrack到硬盘,作者[美]Pritchett Willie ...
- 使用Selenium WebDriver测试自动化的22条实用技巧
使用Selenium进行测试自动化已使全球的网站测试人员能够轻松执行自动化的网站测试. Webdriver是Selenium框架的核心组件,通过它您可以针对不同类型的浏览器(例如Google Chro ...
- jointable 能加多个字段吗_Excel函数Countif、Countifs超级实用技巧,你真的都掌握吗?...
计数是我们日常工作中用到的最多的功能,如果只是单纯的计数,很多亲基本可以搞定,但是如果附加条件之后,很多亲就开始犯懵-- 一.Countif:单条件计数.1.功能及语法结构.功能:计算指定区域中满足条 ...
- access month函数用法_小白进阶必备的10组函数公式实用技巧解读,有案例和详情解读哦!...
函数公式可以说是Excel的灵魂,所以对于一些基础实用性的函数公式我们必须掌握哦! 一.Len.Lenb:返回文本字符串中的字符数个数或字符数. 目的:返回指定字符串的字数和字节数. 方法: 在目标单 ...
- @vail 判断某字段在范围内_条件判断函数If,你真的会使用吗?实用技巧都掌握吗?...
If函数应该是每位亲最先接触的Excel函数,除了单条件判断意外,你还知道它的那些用法或技巧?如果你只会使用单条件判断,那你就Out了,详情请看下文. 一.单条件嵌套使用.目的:判断成绩所属的等级.方 ...
- c语言中lookup函数功能,查询引用之王——Lookup函数实用技巧解读!
Excel中最常用的查找引用函数当之无愧的是Vlookup,但是有一个函数比Vlookup函数的功能更强大,此函数就是Lookup. 一.作用及语法结构. Lookup函数具有两种使用形式:数组形式和 ...
- Qt实用技巧:使用Qt加载超大图片的耗时测试
若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/ ...
最新文章
- jvm 堆外内存_NIO效率高的原理之零拷贝与直接内存映射
- 树莓派4外置wifi天线_树莓派打造最强车载娱乐终端(1)音乐和WiFi
- 用python画月亮的代码-用 Python 画一个超级月亮
- 【Android 插件化】Hook 插件化框架 ( 加载插件包资源 )
- 【自动驾驶】相机标定 疑问总结
- nyoj66分数拆分
- 《程序员开发心理学》阅读笔记一
- 多线程中局部静态变量初始化的陷阱
- iPhone 14“感叹号”设计没跑:屏下Face ID要等到2024年
- U-Mail邮件服务器教你反垃圾邮件新方法
- php中如何判断目录是否存在文件_PHP判断指定目录下是否存在文件
- 利用python进行数据分析—五、pandas入门
- 与孩子一起学编程05章
- android studio gradle下载
- PTA-实验7-学生成绩录入及查询
- 【CentOS-7.4】Sphinx 安装与简单配置
- 云计算这场马拉松,AI或是决定格局的野蛮人
- NASA HEG tool安装心得
- mappedBy和JoinColumn实质上指向的是同一个表即外键作为主键所在的表对应的实体
- arduino 红外遥控小车