1.关于环境搭建遇到的问题
1.1Remote方法无法自动带出
家里电脑是没有任何问题,但是在公司电脑练习的时,引入appium调用下面的方法Remote时,发现vscode无法自动带出,第一反映是不是编辑器的自动补全代码有问题,捣鼓一会儿编辑器还是如此,后来测试selenium的时候,发现代码补全没问题,那就是appium这个包有问题,检查python路径对应的包发现,下面只有txt文件,没有py文件,奇怪的是首次用豆瓣下载的时候pip install没有报错,均提示成功,再次在cmd输入命令的时候发现,提示文件夹已存在,那就删除对应的文件夹再次下载,还是空白,在反复这样操作几次后,终于显示有py文件,在vscode中重编写代码发现,Remote方法可以自动带出
1.2运行代码提示一段英文,翻译后大致意思是对应的appium没有权限
想到没有权限的问题,在安装appium的时候,我记得家里的电脑都是下一步下一步,但是在公司练习的时候唯一区别就是,在安装的时候,是选择的所有用户,想到这里是不是因为这个问题,卸载appium,重新安装,安装的时候选择个人用户,启动appium,执行代码果然不报错了,原来这里还有这个坑
1.3为什么要有python+appium+模拟器(真机)
在搭建环境的时候,脑海中有很多疑问,为什么要安装这么多环境,都是干嘛用的,先不管了,环境
按照课件先搞起来再说,其实课上也只是知道使用,还是没搞明白为啥要这么弄,记得当时课上讲到appium监听,并翻译python脚本,虽然如此,但是还是没明白,直到后面自己练习多了,原来没有这些东西,整个框架就不存在,因为我当时思维就是,脚本连接模拟器,直接操作,类似SE,还是知识库太欠缺,其实是不存在这种,手机怎么识别代码呢,肯定有中间翻译的玩意儿。那就是appium,其次是为什么上课一再强调,需要知道包名和入口程序,我在想,难道不是跟SE一样,SE是网址,那我们不就是直接模拟点击屏幕就好,后来再仔细想想,点击屏幕总得要告诉程序点什么东西吧,这个时候包名和程序入口显得尤其重要,不然你都不知道怎么后续的操作
2.登录后遇到广告
这个暂时想到的办法,就是如果定位到元素,就进行下一步操作,但是这个在实验的时候还是不太准确,暂时没想到什么好的办法
3.滑动屏幕
在滑动屏幕的时候,是直接引用老师上课讲给的代码,顺带也是练习了,因为遇到一个问题是,如果账号已经登录了,再次登录就会提示我找不到,思考之后,就是判断登录后就退出登录,然后重新输入账号密码就可以了,按照这个思路运行代码可行,同时滑动的时候其实也遇到一个问题,就是滑动会提示not complete,这个大概就是滑动还没完成,那思考就是不是滑动还没完成,想到就先尝试,滑动到点击元素给加了一个等待时间。果然是这样,现在就没报错了
4.包的引入错误
因为之前做过SE的框架,appium其实跟这个差不多,所以在写testcase的时候,是直接复制之前代码,然后里面的内容稍微改一改,结果运行的时候,提示not find css lector,大概是这个,具体单词记得不是很清楚,按照提示,应该是没有这个找不到这个方法,排查代码发现,复制的时候,引入都没改,而是直接用的selenium,不是用的appium,更改之后,再运行代码就可以了
5.练习toast遇到问题
练习的时候,开始其实没想到包名和入口的问题,就直接对着视频照抄,结果运行代码的时候就报错了。后来翻了之前的课件之后,运行包,得到包名和入口,更换之后,再次运行代码就是可以的,其次,上课的视频里面就是缺少一个元素点击的代码,所以,如果照抄会提示元素找不到,所以,还是的要自己动手,偷懒是不可取的