简介 随着现在智能手机的普及和应用,小到五六岁或者更小的娃娃,老至七八十岁老头老太太都是智能手机的用户,基本上达到每个人都在用,每次在地铁或者公交上,就看看到这样的场面,手指不停地在手机屏幕上来来回回的的滑呀滑,滑呀滑!滑个不停,那么我们如何在自动化测试中用脚本来实现这些操作呢???在这里宏哥给小伙伴们介绍两种操作,一个是比较低级的滑动,另一个是比较高级的滑动. 低级溜冰的滑动 例如:在app应用日常使用过程中,会经常用到在屏幕滑动操作.如刷朋友圈上下滑操作.浏览图片左右滑动操作.特别是现在抖音…
简介 接着上一篇继续看一下如何并发测试以及并发测试的过程中,可能遇到的问题,在这里宏哥把宏哥遇到的和小伙伴或者童鞋们,一起分享一下. Appium端口检测 问题思考 经过前面学习,我们已经能够使用python启动appium服务,但是启动Appium服务之前必须保证对应的端口没有被占用,否则会出现如下报错: error: Couldn't start Appium REST http interface listener. Requested port is already in use. Pl…
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信.它可为各种设备操作提供便利,如安装和调试应用. Tips: 在 android_sdk/platform-tools/ 中找到 adb 工具,然后根据其具体的路径配置好环境变量.然后启动cmd 输入‘adb’即可查看是否配置成功. 有小伙伴会问,为什么我需要学习…
简介 前面课程只是启动了单个appium服务,只能控制单台设备.如果需要针对多台设备测试那么该如何处理?而且发现群里的小伙伴们也在时不时地在讨论这个问题,想知道怎么实现的,于是宏哥就决定写一片这样的文章来给小伙伴们,答答疑,解解惑.希望对各位小伙伴或者童鞋们有所帮助,可以是你们豁然开朗. 启动多个appium服务 首先看下面两个启动appium服务案例. 启动appium服务1 启动appium 服务2 上面案例我们启动了2个不同的appium服务器,他们通过不同的端口来区分不同的服务:如同百米…
简介 前边具体操作和实战已经讲解和分享了很多了,但是一些android的一些基础知识,你又知道多少了,你都掌握了吗?这篇就由宏哥给小伙伴们既是一个分享,又是对前边的一次总结.为什么要对这些做一个简单的分享了,因为在现实具体工作中经常会遇到这样的问题,这里还是通过一个小故事来说明一下.   QA:“那个谁谁谁,我刚刚按照上一次那样操作这款款APP,我死活是跑不起测试脚本了.(内心独白:我去,这个奇怪的问题,一定是他给我的安装包有问题”) DEV:“嗯?还有这样的问题,那你看一下你手机和电脑连接好了…
简介 你有道灵光从天灵盖喷出来你知道吗,年纪轻轻就有一身横练的筋骨,简直百年一见的练武奇才啊,如果有一天让你打通任督二脉,那还不飞龙上天啊.正所谓我不入地狱谁入地狱,警恶惩奸维护世界和平这个任务就交个你了,好吗.这本如来神掌秘籍是无价之宝,我看与你有缘,收你十块钱传授给你吧.想必这段经典台词给为都可以的耳熟能详吧,宏哥,没这么牛叉呼啦带闪电,就是希望对你有帮助就可以了. 上一篇宏哥给小伙伴们介绍完定位工具这两个异性兄弟,这篇就给小伙伴们介绍一下定位方法.早就有小伙伴问,这个这个怎么定位,那个那个…
习题 36: 设计和调试 现在你已经学会了“if 语句”,我将给你一些使用“for 循环”和“while 循环”的规则,一面你日后碰到麻烦.我还会教你一些调试的小技巧,以便你能发现自己程序的问题.最后,你将需要设计一个和上节类似的小游戏,不过内容略有更改. If 语句的规则 每一个“if 语句”必须包含一个 else. 如果这个 else 永远都不应该被执行到,因为它本身没有任何意义,那你必须在 else 语句后面使用一个叫做 die 的函数,让它打印出错误信息并且死给你看,这和上一节的习题类似…
简介 乍眼一看,小伙伴们觉得这部分其实在异性兄弟那里就做过介绍和分享了,其实不然,上次介绍和分享的大哥是uiautomatorviewer,是一款定位工具.今天介绍的是一个java库,提供执行自动化测试的各种API. Android团队在4.1版本(API 16)中推出了一款全新的UI自动化测试工具UiAutomator,用来帮助开发人员更有效率的完成App的Debug工作,同时对于测试人员也是一大福音,为什么这么说呢?     QA:“那个谁谁谁,我刚刚操作的时候,我发现了一个bug,你写的A…
简介 前边几篇介绍了Monkey以及Monkey的事件,今天就给小伙伴们介绍和分享一下Monkey的参数. 首先我们看一下这幅图来大致了解一下: 1.Monkey 命令 基本参数介绍 -p <允许的包名列表>       用此参数指定一个或多个包.指定包之后,monkey将只允许系统启动指定的app.如果丌指定包, monkey将允许系统启动设备中的所有app. 指定一个包:adb shell monkey -p com.shjt.map 100 指定多个包:adb shell monkey…
满足前提: 1).必须是一个可迭代对象 2).可以被next()所作用的 举例: generator... 高效的检测一个对象是否是迭代器对象 需要使用collections模块中的Iterator类配合isinstance()内置函数来判断 步骤如下: 第一步:导入collections模块 第二步:collections.Iterator(类型)配合isinstance()函数来判断,代码如下: isinstance(obj,collections.Iterator) 如果返回值为True,…