北京建设网网站广州市专业网站设计

当前位置: 首页 > news >正文

北京建设网网站,广州市专业网站设计,石家庄房产信息网站,免费优化关键词下面就是我个人整理的一些比较常用的自动化测试工具#xff0c;并且还有视频版本的详细介绍#xff0c;同时在线学习人数超过1000人#xff01; B站讲的最详细的Python接口自动化测试实战教程全集#xff08;实战最新版#xff09;一#xff1a;前言 随着测试工程师技能和…下面就是我个人整理的一些比较常用的自动化测试工具并且还有视频版本的详细介绍同时在线学习人数超过1000人 B站讲的最详细的Python接口自动化测试实战教程全集实战最新版一前言 随着测试工程师技能和工资待遇的提升甚至有一部分的开发人员开始转入测试岗位跨入自动化领域的测试攻城狮越来越多。在自动化测试领域自动化工具肯定占据了核心的位置。 本文总结了常用的测试自动化工具和框架这些工具和框架有助于更好地定位自己以跟上软件测试的发展趋势 二、2022年自动化测试工具框架分类统计 1、Selenium Selenium是一系列基于Web的自动化测试工具。它提供了一系列测试函数用于支持Web自动化测试。这些函数非常灵活它们能够通过多种方式定位界面元素并可以将预期结果与系统实际表现进行比较。 作为一款强大的测试工具Selenium具有以下几个特性 1可对多浏览器进行测试如IE、Firefox、Safari、Chrome、Android手机浏览器等。 2可支持多种语言例如Java、C#、Python、Ruby、PHP等。 3跨平台例如Windows、Linux、iOS、Android等。 4开源免费。 Selenium工具组 Selenium由以下几个工具组成每一种都扮演着独特的角色。 Selenium IDE。Selenium IDE是一个用于构建脚本的初级工具。它是一个 Firefox 插件拥有一个易于使用的界面。Selenium IDE 拥有录制功能能够记录用户执行的操作并将其导出为可重复使用的脚本支持多种编程语言然后用于执行测试。Selenium 1。Selenium 1Selenium-RC是 Selenium 最主要的测试工具之一它所具有的某些功能即使是新版的 Selenium 2 也无法支持。它能够通过多种语言Java、JavaScript、Ruby、PHP、Python、Perl、和C#编写测试代码同时能支持几乎所有浏览器的测试。Selenium 2。Selenium 2WebDriver作为新版的 Selenium 工具代表未来 Selenium 的发展方向。这套全新的自动化测试工具提供了许多功能包括一套组织性更好、面向对象的 API并克服了在之前 Selenium 1 版本中测试的局限性。可以通过很少的修改就将Selenium 1的代码移植到 Selenium 2。同时Selenium 2 也提供了向前兼容Selenium 1的接口。Selenium Grid。Selenium Grid能够让 Selenium 1 的测试在多个不同的环境中运行也能让测试并行执行。也就是说各个测试能够在同一时间、不同机器上运行。这有两个好处。首先如果拥有一套大规模的测试或执行缓慢的测试可以通过 Selenium Grid 将测试在同一时间、不同机器上运行从而大幅提高性能其次如果测试必须在多个环境中运行那么 Selenium Grid 具有的“同一时间、不同机器”的特性也能够轻松做到这一点。不管怎么样 Selenium Grid 都能够大幅提高测试的效率。 本文主要介绍 Selenium 2WebDriver。 Selenium 2 提供了一套友好的、面向对象的 API 与 Selenium 1 的基于方法的 API 不同。 Selenium 2 完全就是一套类库不依赖于任何测试框架不需要启动其他进程或安装其他程序也不必像 Selenium 1 那样需要先启动服务。另外二者所采用的技术方案也不同。 Selenium 1 是在浏览器中运行 JavaScript来进行测试而 Selenium 2 则是通过原生浏览器支持或者浏览器扩展控制浏览器。WebDriver 支持 FirefoxFirefoxDriver、IEInternetExplorerDriver、OperaOperaDriver和 ChromeChromeDriver浏览器。 Selenium 2WebDriver安装Windows 环境 我选择 Python 作为脚本开发语言因此需要先安装 Python 及相应工具然后安装 Selenium 2Selenium WebDriver。 安装Python。前往 Download Python | Python.org 下载Python安装包点击安装即可。安装setuptools。setuptools 是下载、安装、升级、卸载 Python 包的工具。多种方法可以安装 setuptools本文使用方法前往 setuptools · PyPI 下载 ez_setup.py 文件在此文件路径下运行 python 命令python ez_setup.py自动下载对应Python版本的 setuptools自动安装。安装pip。前往 pip · PyPI下载 pip-6.0.8.tar.gz 解压。cmd 下运行python setup.py install。再切换到 Python27\Scripts目录运行 easy_install pip。安装完毕。安装Selenium。联网状态下直接在Python27\Scripts目录输入命令pip install -U selenium。即可。下载、安装各浏览器的Driver。 完成以上步骤Python环境和Selenium 2 均已安装完毕。下面测试一个简单的脚本 from selenium import webdriver browser webdriver.Firefox() browser.get(http://seleniumhq.org/) 脚本执行过程 打开Firefox浏览器打开网页http://seleniumhq.org/ 上面的每一步的安装过程均有多种方法联网、不联网等。自己在安装时也可尝试其他方案进行安装。 2、robotframework Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性支持关键字驱动可以同时测试多种类型的客户端或者接口可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发ATDD。 上面一段话是百度百科的简介最开始是诺基亚团队没听错开发并提供支持。为什么是框架呢因为他功能强大可以自定义关键字拓展功能。基于python开发只要会一点Python就可以把robotframework玩的很溜。当然不会编程也不要担心因为这是一款非常简单易用的自动化测试框架。即便不会编程也可以慢慢上手。 表格式“编程”让你不再担忧看不懂代码 为什么第一个就拿出这个来说呢因为许多测试人员刚开始接触自动化其实内心是比较纠结的。听说要会编码要是我编码很厉害我就直接开发了对么。其实不是这样找一个懂测试的开发人员很难找一个会编程的测试人员更难。许多开发人员潜心研究技术无暇去管测试哪些思路但是测试人员不一样闲暇之余学学编程对测试开发自动化测试工具性能测试的脚本都是有所帮助的。好吧扯远了。 图是用的人家的。这是在进行浏览器使用百度搜索的过程。大家可以看到这个就是再进行脚本的开发了。 刚开始看 可能不是很明白但其实很好理解。简单说一下这个表格传递的信息。 首先代码是一行一行执行的左至右 上至下。第一行 open browser 浅蓝色。表示其本身是一个关键字。就是我们理解的函数。 open browser 这个函数 可以传参数进去几个呢。三个因为后面有三个格子是白色。最后一行是close browser 后面没参数 所以后面格子灰色 那么好理解了。第一行就是 打开浏览器网址浏览器最后一个参数为空了暂且不管其实第二个也可以默认为空不填chrome默认就是firefox这里相相当于函数里有些内容是有初始值的不传参就默认值。但有的是必须传进来的参数比如这里的 网址 第二行input text 输入文字同理 这也是个关键字。后面跟的是 文本框的元素的定位 以及 你要输入的文字内容。不懂idkw1为什么是定位的 百度 第三行click button 点击按钮 点哪个呢idsu1的这个参数就是这个百度搜索按钮的定位。如何定位元素这是web自动化的基本功以后再讲 sleep    2    休息  2秒 最后关闭浏览器。 没错这就可以跑了。不信咱们可以起搭建环境试试 3、appium Appium是一个开源、跨平台的测试工具可以用来测试原生及混合的移动端应用。Appium支持IOS、Android及Windows 平台。Appium使用WebDriver的json wire协议来驱动IOS系统的UIAutomation库、  Android系统的UIAutomator框架。它允许测试人员在不同的平台iOSAndroid使用同一套API来写自动化测试脚本这样大大增加了iOS和Android测试套件间代码的复用性 Appium支持Selenium WebDriver支持的所有语言如Java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure或者Perl语言更可以使用Selenium WebDriver的Api。Appium支持任何一种测试框架。如果只使用Apple的UIAutomation我们能用javascript来编写测试用例。同样如果只使用Google的UIAutomater我们就能用java来编写测试用例。Appium实现了真正的跨平台自动化测试 appium和selenium的关系 Appium类库封装了标准Selenium客户端类库为用户提供所有常见的JSON格式selenium命令以及额外的移动设备控制相关的命令如多点触控手势等。Appium服务端定义了官方协议的扩展为Appium 用户提供了方便的接口来执行各种设备动作例如在测试过程中安装/卸载App。当然Appium客户端类库只是增加了一些功能而实际上这些功能就是简单的扩展了Selenium 客户端所以他们仍然可以用来运行通用的Selenium会话。 Appium相关名词介绍 Appium Server Appium 的核心是一个web服务器它提供了一套REST的接口。它收到客户端的连接监听到命令接着在移动设备上执行这些命令然后将执行结果放在 HTTP响应中返还给客户端。事实上这种客户端/服务端的架构给予了许多的可能性比如我们可以使用任何实现了该客户端的语言来写我们的测试代码。比如我们可以把服务端放在不同的机器上。比如我们可以只写测试代码然后使用云服务来执行命令。 Appium server就是在命令行用appium命令打开的东西默认监听4723端口。Appium server可以把请求接收并转义转发给中间件Bootstrap.jar它是用java写的安装在手机上。 Bootstrap 接收appium的命令最终通过调用UiAutomator的命令来实现对手机的操作最后执行的结果以Json Wire Protocol由Bootstrap返回给appium server再返回给Client端Client会汇总操作结果 Session 自动化始终围绕一个session进行客户端初始化一个seesion会话来与服务端交互不同的语言有不同的实现方式但是他们最终都是发送为一个POST请求给服务端请求中包含一个JSON对象被称作“desired capabilities”。此时服务端就会开启一个自动化的 session然后返回一个 session IDsession ID将会被用户发送后续的命令。 Appium Client Appium Client 有很多语言库。包括 Java, Ruby, Python, PHP, JavaScript 和 C#这些库都实现了 Appium 对 WebDriver 协议的扩展。当使用 Appium 的时候你只需使用这些库代替常规的 WebDriver 库就可以了我们写脚本的时候用对应的IDE开发工具即可如java端用eclipsepython端用pycharm。   Appium desktop 我们提供了 GUI 封装的 Appium server端下载它封装了运行 Appium服务端的所有依赖而不需要担心怎样安装Node.js。其中还包括一个Inspector工具可以帮助你检查应用的界面层级让你更方便地编写测试用例。 Bootstrap 实质上是一个jar包在appium建立和手机端通讯的时候会将此jar包推送到手机中去负责在手机端和appium server的通讯将指令下发给UIAutomator。 Bootstrap可以理解为它是一个uiautomator的测试脚本它的入口类Bootstrap继承于UiAutomatorTestCase所以UiAututomator可以正常运行它它也可以正常的使用uiautomator的方法这个就是appium的命令可以转换成uiautomator的命令的关键。 其次它是一个socket服务器它专门监听4724端口过来的appium的连接和命令数据并把appium的命令转换成uiautomator的命令来让uiautomator进行处理。 最后它处理的是appium从pc端过来的命令是一系列的请求。 UIAutomator Android端真正实现App自动化测试的框架appium最终会通过Bootstrap.jar将指令发送到UIAutomator通过UIAutomator来定位元素操作元素。、 4.QTPUFT QTP简介 QTP是Quick Test Professional的简称是一种自动测试工具 使用QTP的目的是想用它来执行重复的自动化测试主要是用于回归测试和测试同一软件的新版本 因此在测试前要考虑好如何对应用程序进行测试例如要测试哪些功能、操作步骤、输入数据和期望的输出数据等 QTP基本功能 HP QuickTest Professional 提供符合所有主要应用软件环境的功能测试和回归测试的自动化。采用关键字驱动的理念以简化测试用例的创建和维护。它让用户可以直接录制屏幕上的操作流程自动生成功能测试或者回归测试用例 QTP软件特点 QTP是一个侧重于功能的回归自动化测试工具 QTP支持的脚本语言是VBScript QTP支持录制和回放的功能 QTP通过三类属性来识别对象aMandatory bAssistive cOrdinal identifiers Action是QTP组织测试用例的具体形式拥有自己的DataTable和Object Repository支持Input和output参数字 QTP使用步骤 QTP进行功能测试的测试流程 [制定测试计划]——[创建测试脚本]——[增强测试脚本功能]——[运行测试]——[分析测试结果] 大致五个步骤 5.其他常见的自动化工具汇总