本节内容:
1:自动化测试工具的安装
2:常用adb的命令
3:常用功能会的汇总
4:爬取朋友圈实例
0:报错问题
1:adb无法链接上夜神模拟器 1、先关闭所有adb的进程; 2、将电脑中SDK目录下的adb.exe文件,复制到夜神模拟器的目录下(bin目录), 夜神模拟器目录下原adb文件名字叫做nox_adb.exe,复制过去之后改名为nox_adb.exe,替换即可。
一、自动化测试工具的安装
通过百度云去获取AndroidSDK 、jdk-8u211-windows-x64.exe、appium,里面集成了自动化appium包 也可以查看http://www.python3.vip/doc/tutorial/appium/01/ 博文 链接:https://pan.baidu.com/s/1ZzdN-Tv9Jv0Py1C-cTk99A 提取码:dw69
(1)安装jdk-8u211-windows-x64.exe后,要创建JAVA_HOME的环境变量
(2)解压AndroidSDK到一个目录,然后要创建ANDROID_HOME环境变量
(3)解压AndroidSDK到一个目录,然后要添加一个path变量
(4)安装appium
二、常用adb的命令
2.1:获取appPackage和appActivity
手机已经安装的apk了
(1)链接上调试的手机设备,然后执行你安装的Androidskd中的 D: oolsandroidsdk oolsinuiautomatorviewer.bat文件然后获取元素。最好弄个快捷方式 (2)adb -s 127.0.0.1:62001 shell pm list package 当链接设备有多个的时候要指定设备名字,命令列出了所有的包名字 (3)会显示如下,最近的 几个 activity 信息 adb shell dumpsys activity recents | find "intent={" adb -s 127.0.0.1:62001 shell dumpsys activity recents | find "intent={"
手机上没有安装apk
d: oolsandroidsdkuild-tools29.0.3aapt.exe dump badging d: oolsapkili.apk | find "package: name=" 输出信息中,就有应用的package名称 d: oolsandroidsdkuild-tools29.0.3aapt.exe dump badging d: oolsapkili.apk | find "launchable-activity" 输出信息中,就有应用的启动Activity
2.2:点击、屏幕拖动、拖拽、文本输入、动作链
点击:tap(self,postions,duration=None)
postions:他是点击的位置组成的列表 duration:他是点击持续时间单位是毫秒 实例: driver.tap([(100,20),(100,60),(100,100)],500) 这样就可以模拟点击屏幕的几个点 对于某个元素如按钮来说,我们可以直接调用click方法: button = find_element_by_id('com.tencent.mm:id/btn') button.click()
屏幕拖拽:
scroll(self,origin_el,destination_el) 实例如下所示 driver. scroll (ell, el2) 从元素el1到元素el2 swipe(self,start_x,start_y,end_x,end_y,duration=None) 实例如下所示 driver. swipe ( 100, 100, 100, 400, 5000) 这样可以实现在 5s 时间内,由 (100, 100)滑动到(100, 400) 可以使用 flick ()方法模拟从 点快速滑动到 点,用法如下所示: flick(self, start_x, start_y, end_x, end_y)
拖拽 drag_and_drop():
将某个元素拖动到另一个目标元素上,用法如下所示:
drag_and_drop(self, origin_el, destination_el)
可以实现将元素 origin_el 拖曳至元素 destination_el
文字输入:set text ()方法实现文本输入
el = find_element_by_id (’ com.tencent.mm:id/cjk') el.set_ text("hello")
动作链 :与Selenium 中的 ActionChains 类似, ppium 中的 TouchAction 可支持的方法有
tap()、press().long press()、release()、move_to()、wait()、cancel()等, 实例如下所示: el = self.driver.find_element_by_accessibility_id (’Animation ' ) action = TouchAction(self .driver) action.tap(el).perform() 首先选中一个元素,然后利用 TouchAction 实现点击操作 如果想要实现拖动操作,可以用如下方式: els= self.driver.find_elements_by_class_name('listview') al = TouchAction() al.press(els[0]). move_ to(x=10, y=0).move_ to(x=10,y=- 75).move_ to(x=10, y=-600).release() a2 = TouchAction() a2.press(els[1]).move_to(x=10,y=10).move_ to(x=10,y=- 300).move_to(x=10, y=-600).release()
3:常用功能会的汇总
4:爬取朋友圈实例