数据采集-自动化测试
ninehua 2024-12-06 18:07 29 浏览
自动化测试分为:web和移动端两个方面。
? web端:Webdriver。
? 移动端:appium,Robotium,monkeyRuner ,UIAutomator ,MonkeyTalk,Airtest 。
? win32应用程序:pywinauto。
自动化测试作为爬虫手段的缺点:占用系统资源严重(往往要启动浏览器和多个标签页)、爬取速度较慢;尽管有这些缺点,但是它可以作为不是办法中的办法。
Web端Webdriver自动化测试在Windows环境下搭建和简单测试如下所示:
? Windows环境下搭建开发环境步骤:
- Python环境(推荐2.7)
- Pip install selenium
- 相应浏览器的驱动,比如谷歌浏览器对应的:chromedriver.exe。
? 简单测试案例:
移动端appium自动化测试在Windows环境下搭建和简单测试如下所示:
? Windows环境下搭建开发环境步骤:
- Python环境(推荐2.7)和jdk。
参考https://jingyan.baidu.com/article/3c343ff70bc6ea0d377963df.html
- Adb工具的下载:自己单独下载adb、夜神模拟器自带和Android sdk;这里推荐使用Android sdk(大概有几个G大小)。
添加系统变量ANDROID_HOME, 值是Android SDK的安装路径
把Android SDK下的platform-tools路径和tools路径添加到系统变量Path
参考:https://jingyan.baidu.com/article/f71d603757965b1ab641d12a.html
- Apk安装介质:真机、Android自带模拟器和第三方模拟器;这里推荐使用:第三方模拟器(夜神模拟器)。
- 这里需要将夜神模拟器设置为:开发者模式。
- 安装appium PC客户端。
- 安装Nodejs (Appium使用Node.js作为服务器引擎)
参考:https://jingyan.baidu.com/article/5552ef47812ba9518ffbc915.html
(1)安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org
(2)cnpm install -g appium
- 安装python开发模块
(1)pip install selenium==2.46.0推荐使用2.46.0版本,其它版本也可以。
(2)pip install Appium-Python-Client。
(3)查看selenium版本 pip show selenium。
- 使用apktool-new分析出待下载apk的appPackage和appActivity。
I.利用apktool工具反编译下载到的apk。命令如下:
Apktool d XXX.apk
II.反编译得到XXX文件夹,在AndroidManifest.xml里查找appPackage和appActivity,具体查找可以参考
http://blog.csdn.net/linux_loajie/article/details/34148943 。
- 使用步骤Ⅱ中的Android sdk中的UI Automator viewer定位待分析apk的元素位置。
- 移动端设备操作
(1)adb devices 列出当前电脑可连接移动设备
(2)adb connect 设备名(夜神模拟器为127.0.0.1:62001)
(3)adb connect 设备名(逍遥模拟器为127.0.0.1:21503)【注意:逍遥模拟器安装目录下自带adb.exe 如果和系统设置的adb版本不一致,会出现offline,此时需要将系统的adb.exe替换逍遥自带的adb.exe】
(4)获取连接设备名称:adb shell getprop ro.build.version.release
(5)获取要测试的app包名与起始页:adb shell dumpsys activity top | find "ACTIVITY"
- [start coding],确保启动[adb connect 127.0.0.1:62001 | adb devices]
简单测试案例:
? 参考网址:
- http://www.cnblogs.com/kllay/p/5505737.html
- http://blog.sina.com.cn/s/blog_44d19b500102vtte.html
Windows标准图形界面端pywinauto自动化测试在Windows环境下搭建和简单测试如下所示:
? Windows环境下搭建开发环境步骤:
- Python环境(推荐2.7)。
- Pywinauto模块安装。
- 辅助组件:spy++/Managedspy。
扩展认知:
1. Selenium与pyppeteer,Puppeteer的区别
Selenium,作为一款知名的Web自动化测试框架,支持大部分主流浏览器,提供了功能丰富的API接口,常常被我们用作爬虫工具来使用。然而selenium的缺点也很明显,比如速度太慢、对版本配置要求严苛,最麻烦是经常要更新对应的驱动。
由于Selenium流行已久,现在稍微有点反爬能力的网站都会对selenium和webdriver进行识别,网站只需要在前端js添加一下判断脚本,很容易就可以判断出是真人访问还是webdriver。虽然也可以通过中间代理的方式进行js注入屏蔽webdriver检测,但是webdriver对浏览器的模拟操作(输入、点击等等)都会留下webdriver的标记,同样会被识别出来,要绕过这种检测,只有重新编译webdriver,麻烦自不必说,难度不是一般大。
由于Selenium具有这些严重的缺点。pyperteer成为了爬虫界的又一新星。相比于selenium具有异步加载、速度快、具备有界面/无界面模式、伪装性更强不易被识别为机器人,同时可以伪装手机平板等终端;虽然支持的浏览器比较单一,但在安装配置的便利性和运行效率方面都要远胜selenium。
Pyppeteer(Pyppeteer其实是Puppeteer的Python版本)无疑为防爬墙撕开了一道大口子,针对selenium的淘宝、美团、文书网等网站,目前可通过该库使用selenium的思路继续突破,毫不费劲。
素材网址:https://zhuanlan.zhihu.com/p/112523661
总结:目前倾向于使用pyppeteer,Puppeteer。
思维的转变之自动化测试和逆向工程的融合
假如我们在破解APP或者是WEB加密的情景时,如果破解难度大或者是目标加密方式变化频繁;我们可以换种思路去解决这个问题,那就是“自动化”方式。其思路是:将解密透明化。
衍生:这其实是种解决问题的思路,可以上升到战略维度的思路。
相关推荐
- VMware ESXI系统镜像定制
-
为什么要定制ESXi镜像呢?原因很简单,那就是H3C比较老的服务器,比如我用的UISR390XG2服务器,是没有适配的ESXi部署镜像的。而我要部署的H3CloudOS添加节点时只能选择H3C...
- 最新保姆级、超详细介绍VMware的使用(一)软件的安装
-
一、VMware简介VMWare虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMware采用了完全不同的概...
- 微软提供免费Windows 11 虚拟机下载
-
据ZDNet11月23日报道,微软(Microsoft)提供了免费的Windows11企业版虚拟机以供下载。针对开发人员,微软表示,“通过使用带有最新版本的Windows、开发工具、sdk和准备好的...
- VMware Workstation Pro 17.5安装包下载安装教程
-
软件简介VMwareWorkstationPro17.5是一款专业功能最强大的虚拟机软件,用户可以在虚拟机同时运行各种操作系统,进行开发、测试、演示和部署软件,虚拟机中复制服务器、台式机和平板环...
- VMware vCenter Server 8.0U3c 发布下载,修复 U3b 更新停止响应的问题
-
VMwarevCenterServer8.0U3c发布下载,修复U3b更新停止响应的问题VMwarevCenterServer8.0U3c发布下载-集中式管理vSphere...
- 最新整套VMware Workstation 15 Pro 官方简体中文版 + 永久密钥
-
VMwareWorkstation是深受全球用户信赖并屡获殊荣的虚拟机软件。它可以在单台PC上运行多个、多平台、多层面的操作系统与应用程序。并且支持快照和克隆,支持物理机与虚拟机间复制、移动,交...
- VMware16虚拟机安装教程
-
系统装机教程也告一段落,接下来秋水给大家讲讲虚拟机的安装,这里呢虚拟机选择VMware。一、安装教程1、在软件官网下载VMware安装包,或者在后台回复获取秋水下载好的安装包。2、双击软件进行安装,并...
- VMware虚拟机12.1下载:修复Win10镜像识别错误等问题
-
IT之家讯12月9日消息,虚拟机软件VMwareWorkstation迎来12.1更新版本,本次更新为维护性更新,修复了之前版本中存在的一些问题,比如将Win10首个重大更新ISO镜像错误识别为W...
- VMware vCenter Server 8.0U3b 发布下载,新增功能概览
-
VMwarevCenterServer8.0U3b发布下载,新增功能概览ServerManagementSoftware|vCenter请访问原文链接:https://sysin.or...
- 下载VMware虚拟机:打造全能多系统桌面,让IT技术探索触手可及!
-
VMware虚拟机打造全能多系统桌面,助力IT技术探索在当今科技飞速发展的时代,IT技术正以前所未有的速度渗透到生活和工作的方方面面。无论是智能硬件、移动应用还是云计算服务,都离不开IT技术的支撑。掌...
- 如何在vmware workstation player虚拟机上安装VMware Tools工具
-
版本:vmwareworkstation16player&ubuntu64位。首先我们使用vmwareworkstation16player启动ubuntu64位虚拟机,然后点击虚...
- VMware与CentOS安装配置指南
-
以下是一份详细的VMware虚拟机安装、配置及CentOS系统安装配置的指南,适合新手逐步操作:一、VMware虚拟机安装与配置下载并安装VMware下载地址:访问VMware官网,选...
- VMware虚拟机与物理机文件交互,这8种方法送给你
-
上一期我们讲解过用VMWare虚拟机打造一个金刚不坏之身的操作系统,小伙伴们反应说方法不错,只是虚拟机与物理机文件交互方式不好操作,这期应小伙伴们的要求,给大家讲解下虚拟机与物理机文件交互的8种方式,...
- VMware 17.0 Pro 版本正式发布,还有适配MacOS 的 Fusion 13 Pro下载
-
VMware17.0Pro官方下载地址:【点击获取】私聊VMware17.0Pro的新功能特性容器和Kubernetes支持使用vctlCLI构建/运行/拉/推容器映像。支持在Works...
- VMware Tools安装失败?手把手教你本地安装
-
VMwareTools安装失败?作为虚拟机与物理机之间的"桥梁",VMwareTools能实现文件拖拽、剪贴板共享、分辨率自适应等关键功能。没有它,VMware虚拟机就变得非常不好...