小白在学习实践Appium对APP进行自动化测试中遇到各种各样的问题,比如今天小白遇到了“怎么使用swipe不能滑动屏幕?”的问题。
下面就小白和老鸟的对话,来说明怎么正确使用swipe来滑动屏幕。
小白:driver.swipe(100, 800, 100, 100, 2);
这个为什么不能划动屏幕啊,所有的百度都是这样写的,这么到我这里就不行了?
老鸟:首先你要看,你需要的是怎么滑动。是左右滑动,还是上下滑动,是从左到右,还是从右到左,还是从上到下等。如果你们的滑动方向不一样,你抄百度有毛用?
小白:就是最下面的按钮在屏幕之外,划动后把下面的按钮显示出来呗。手动操作就是:手指放在屏幕下面,往上移动。这个例子到处都有,但是(我用)就是不行?!
老鸟:你做了一定的思考时间设置嘛?页面没显示出来,而你是基于页面的自动化,你搞毛?
小白:肯定显示出来了。这个页面我进去,填了一个text了,然后我要划动点击下面的提交按钮。
老鸟:那你看看你的滑动,是否到(页面)下面了,自动化过程你不是可以监视手机屏幕(运行情况)?
小白:我(使用)真机的,毫无反应。
老鸟:swipe有五个参数,四个坐标参数(分别是滑动起点x,y;滑动终点x,y),以及滑动所用时间。你在那个页面用手滑动看,是不是滑快了不行,那就设置一个时间。
小白:第五个参数不是时间嘛?
老鸟:我原来所测应用有个引导页,左右滑动慢了就不行,最后设置了500ms的(滑动)时间解决。
小白:第五个参数单位是ms还是s?
老鸟:ms
老鸟:你现在最好的做法,就是手工测试看看,需要怎么做滑动,然后调用方法实现这种方式。
小白:终于好了,应该是太快了。
老鸟:看,这不就得了。
小白:MD,时间写错了,500就好了。
小白:那些渣渣写的2(所看百度文章)。
老鸟:你要去了解这些方法的使用,不要照搬百度,而且百度上好多都是水货。所以我才打算自己给大家提供点干货。