百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 软件资讯 > 正文

数据采集-自动化测试

ninehua 2024-12-06 18:07 8 浏览

自动化测试分为: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加密的情景时,如果破解难度大或者是目标加密方式变化频繁;我们可以换种思路去解决这个问题,那就是“自动化”方式。其思路是:将解密透明化

衍生:这其实是种解决问题的思路,可以上升到战略维度的思路。

相关推荐

64位Win7中7zip无法关联文件的问题

问题1:win7x64中安装了7zip,在解压文件右键打开无法关联文件。解决方法1:在开始菜单中打开7-zipFileManage-》工具-》选项-》7-zip勾选“添加7-zip到右键菜单...

MacBook电脑一键完成7Z、zip、dmg文件压缩,超高效率

许多朋友想要压缩文件,但又找不到合适的软件工具,今天小编推荐一个,本人一直在使用Mac压缩软件——MyZip!1、强大的压缩功能,满足日常生活的各种需要!...

7-Zip 遭抵制?呼吁者定下“三宗罪”:伪开源、不安全、作者来自俄罗斯

...

Win电脑必装良心APP!8款高效办公软件推荐

1、浏览器:EdgeWindows自带浏览器,速度快,内存占用少,集成度高,可以跨平台同步,支持很多拓展程序来增加浏览器的使用体验。...

7-Zip 解压缩工具被曝安全漏洞,可执行远程代码

7-Zip工具介绍7-Zip是一款广泛使用的开源压缩工具,以其高压缩比、多格式支持和免费开源的特性闻名。用户遍布全球,常用于文件的压缩与解压缩操作。然而,近期曝出的一系列安全漏洞,使得这款软件的安...

「IT之家评测室」英特尔酷睿i9-9900KS首发评测

英特尔今天正式解禁了酷睿i9-9900KS处理器,作为英特尔第一款全核5.0GHz的处理器,i9-9900KS的出现让追求极致性能的玩家又有了新的选择。因为工艺问题,英特尔现阶段桌面处理器依旧停留在1...

这才是“全家桶”软件该有的样子,win10电脑必备实用软件推荐

最近因为网课的原因,和很多老师打交道,才发现很多人的电脑里,弹窗广告满天飞,尤其是家里有小孩的,露骨的广告是很令人烦恼。那么这些弹窗广告究竟是从哪里来的呢?小迷虫被很多人问过,于是小迷虫反问:你给电脑...

牛年新年coreelec新升级19.0 coreelec 9.27

2021牛年新年刚过,CoreELEC新的升级就来了。我的升级方法是自己创新的文件替换大法,此法快速高效,中文、遥控和液晶显示,及...

靠谱!龙芯3A6000处理器套装测评,体验远超预期

2023年11月28日,龙芯中科在北京国家会议中心举办了盛大的发布会,会上发布了一系列龙芯产品,其中就包括了采用完全自主研发LoongArch指令集和龙芯第四代微架构的龙芯3A6000处理器。同时,知...

使用Python进行压缩与解压缩 用python解压压缩包

在日常工作中,除了会涉及到使用Python处理文本文件,有时候还会涉及对压缩文件的处理。通常会涉及到的压缩文件格式有:...

游戏持平,生产力更佳,浅谈14700KF和7800X3D谁更值得入手

#秋日生活打卡季#写在前面...

“普通”压缩包实则隐藏恶意木马,黑客利用“ZIP串联文件”攻击

IT之家11月12日消息,安全公司PerceptionPoint报道,有黑客正在利用一种被称为“ZIP串联文件”的复杂规避策略针对Windows用户发动攻击。IT之家获悉,所谓“Z...

剔除软件中的流氓植入 清除流氓软件的工具

虽然流氓软件早已成为过街老鼠人人喊打,但是出于推广的需要,现在仍然有很多软件在进行捆绑。一些不知名网站下载的软件,甚至可能捆绑了木马、病毒等恶意软件。为了不让这些流氓软件进驻我们的电脑,可以在安装之前...

7zip如何把1G文件压缩到200M?三种方法快速简单!

文件太大会带来很多麻烦,不仅会占据我们有限的存储空间,而且传输给其他朋友或同事时也会因为太大而无法传输,或者传输太慢太耗时,实在让人烦躁......那么如何把1G文件压缩到200M呢?下面介绍三种有效...

7zip怎么压缩文件到最小?这样操作非常简单!

7-zip是一款免费开源的压缩软件,当我们需要打包压缩文件的时候,会用到它处理文件,那具体该怎么使用7-zip压缩文件到最小呢?下面简单有效的几个步骤。...