1.SeleniumSelenium是一款开源的自动化测试工具,很多编程语言,Python语言也支持。而且支持非常多的浏览器,例如Chrome、Firefox等。Selenium测试直接在浏览器中运行,就像真实用户所做的一样。Selenium测试可以在Windows、Linux和MacOS上的Chrome和Firefox中运行。其他测试工具都不能覆盖如此多的平台。使用Selenium和在浏览器中运行测试还有很多其他好处。Selenium完全开源,对商业用户也没有任何限制,支持分布式,拥有成熟的社区与学习文档优势:Selenium开源,文档多,长期维护更新。跨平台,支持Windows、MacOS、LinuxSelenium直接驱动浏览器,支持chrome、firefox等大部分浏览器。Selenium开源,操作简单,轻松实现复杂操作。支持Web移动网页的测试。2.phantomjsPhantomJS是一个基于webkit的JavaScriptAPI。它使用QtWebKit作为它核心浏览器的功能,使用webkit来编译解释执行JavaScript代码。任何你可以在基于webkit浏览器做的事情,它都能做到。它不仅是个隐形的浏览器,提供了诸如CSS选择器、支持Web标准、DOM操作、JSON、HTML5、Canvas、SVG等,同时也提供了处理文件I/O的操作,从而使你可以向操作系统读写文件等。PhantomJS的用处可谓非常广泛,诸如网络监测、网页截屏、无需浏览器的Web测试、页面访问自动化等。优势:没有界面,网站加载到内存并执行页面上的JavaScript,所以运行起来比完整的浏览器更高效。劣势:只支持JS语言不支持flash,没法处理视频网站的测试。暴露的底层api太少。目前已经停止开发。目前已经停止开发。3.PuppeteerPuppeteer是Chrome开发团队在2017年发布的一个Node.js包,用来模拟Chrome浏览器的运行。Puppeteer是Node.js工具引擎,提供了一系列API,通过ChromeDevToolsProtocol协议控制Chromium/Chrome浏览器的行为。默认情况下是以headless启动Chrome的,也可以通过参数控制启动有界面的Chrome。Puppeteer默认绑定最新的Chromium版本,使用时自动下载,也可以自己设置不同版本的绑定。4.图片相似度算法图片相似度算法1.像素像素RGB值对比值对比安装方式:直接从源码中拷贝最简单的图片对比,适合滑动验证码的小图对比,但是问题也很明显,容易受单一色调或者颜色变化的影响而导致准确率低,需要图片预处理。2.Rembrandt算法算法安装命令:npminstallrembrandt支持像素和百分比两个方面对比,也支持像素偏差、临界值设定、渲染合成图和不匹配颜色等多种参数设定。需要图片预处理和算法参数调优,需要仔细调整。...