自动化测试

QTP测试学习笔记

本秂侑毒 提交于 2019-12-06 03:29:48
QuickTest Professional(简称QTP)功能自动化测试,原属于Mercury Interactive公司产品,2006年7月被惠普公司收购了,通过安装文件目录可以看到,都是默认放在C:\Program Files (x86)\HP\Unified Functional Testing\文件夹目录下。早期惠普公司还有一个winrunner的产品,目前已经不维护了,但是还是有少部分公司在用。 https://blog.51cto.com/croshere/116783 http://blog.sina.com.cn/s/articlelist_1599269304_5_1.html 首先我们来理解下,为什么要有自动化测试工具呢? 1. 存在大量的回归测试 2. 大数据量的测试 3. 自动化测试工具可以24小时不间断的工作,手工测试就不行了 总结就是,主要是为了减少手工执行的重复性操作,减少人工和时间的浪费,快速的回归测试功能,提高项目的效率。 自动化测试工具使用的条件: 1. 项目的功能点相对稳定 2. 冒烟测试通过后,引入自动化测试,不会浪费资源 常用的功能测试化工具有:WinRunner,QaRun,Robot Framework(IBM的一款产品),Selenium; QTP的特点: 1. 是面向对象的一种功能自动化测试工具 2.

测试之自动化测试概述

久未见 提交于 2019-12-06 03:02:10
你肯定对自动化有些疑问 什么是自动化测试? 为什么要有自动化测试? 自动化测试有哪些分类? 它解决了什么问题? 什么系统适合自动化测试? 自动化测试中有哪些可用工具? 随着对高效软件产品的需求不断增长,每个软件开发团队都需要在将最终产品推向市场之前进行一系列测试。测试工程师在软件产品发布之前努力捕获故障或错误,但交付的软件总是存在缺陷。即使使用最佳的手动测试流程,最终的软件产品仍有可能存在缺陷或无法满足最终用户的要求。自动化测试是提高软件测试的有效性,效率和覆盖范围的最佳方法。 自动化测试使用专用工具自动执行手动设计的测试用例,无需任何人手为干预。自动化测试工具可以访问测试数据,控制测试的执行,并将实际结果与预期结果进行比较。 因此,生成被测系统的详细测试报告。 自动化测试的分类 按照测试目的大致分为:功能自动化测试、性能自动化测试。 按照测试对象可划分:web自动化测试、APP方向自动化测试、接口自动化测试、单元测试等。 其他的包括代码测试和数据测试等。 自动化测试解决了哪些问题 回归测试:项目在发布新版之后,对之前的功能进行验证。 压力测试:统计软件服务器处理并发的能力,比如能支持多少个用户同时访问。 兼容性测试:不同的系统平台,或者不同的浏览器。 提高测试效率,保证了产品的质量。 自动化测试具有提高任何软件长期效率的特定优势。测试自动化的主要优点是: 长期以来

UiAutomator和Appium之间的区别2

与世无争的帅哥 提交于 2019-12-06 02:57:08
UiAutomator和Appium之间的区别和联系 联系: 在Android端,appium基于WebDriver协议,利用Bootstrap.jar,最后通过调⽤用UiAutomator的命令,实现App的自动化测试。 UiAutomator测试框架是AndroidSDK自带的App UI自动化测试Java库。 1、UiAutomator——基于UIAutomation的用户界面自动化测试框架,可以跨应用工作; 2、UiAutomator只能测试Android native app 3、主要功能跟Appium类似 4、可以跨应用测试,Google原生,其稳定性和后续的维护更新可以得到保障,运行时也有更多的权限 5、可以跨进程操作; 6、运行速度快; 7、UiAutomator框架对外提供的API,主要有UiDevice、UiSelector、UiObject、UiCollection和UiScrollable等 8、使用uiautomatorviewer.bat来检索手机界面视图 9、支持的语言可以有python、java等,google推出的底层框架使用java编写的,但是也有python封装的底层框架,因此也可使用python进行自动化测试 Appium——跨平台,允许采用同一套API在不同的平台(IOS,Android)上编写测试代码

Laravel 菜鸟的晋级之路

久未见 提交于 2019-12-05 19:42:24
第一阶段:简单的增删改查 这是最开始接触Laravel的一个阶段。如果有PHP经验,那么应该能很快找到MVC的路径,然后驾轻就熟的开始写起来。虽然还显得有些笨拙,不过很快就能做出一些内容了。如果没有PHP经验,还是不建议轻易入坑的。毕竟连语法都不熟悉,很难上手。 Laravel由于支持大量的命令行生成代码,可能对于thinkPHP或者其他框架的用户并不太友好,不过当你需要创建大量文件的时候,还是会觉得很好用的。即使是简单的增删改查,也建议多用命令行,比如最好用的php artisan make:model Foo -m,直接创建了model和对应的migration。 第二阶段:数据库factory和seeder 开发了比较多的功能之后,会发现需要大量的测试数据,这时候factory和seeder就该大显身手了。当然这两个货并不怎么好搞定,faker的功能非常之多,factory中创建各种faker,然后在seeder中调用,学会这些,你就又升了一级。 faker对中文支持也很好,可以生成用户名,英文名,中文名,中文公司名,中文的企业口号,大陆电话号码等。数据填充的文档faker的文档 第三阶段:表单剥离 最开始表单校验都是直接写在controller中,如果了解一下request相关的内容,可以将表单验证和数据创建更新,都放在单独的request类中,php artisan

信必优自动化测试

走远了吗. 提交于 2019-12-05 19:30:23
人类只需创造,计算机可以做剩下的工 作 近年来,随着世界变得更加多样化,我们需要利用自动化测试来处理日益复杂的应用程序开发工作。测试工具的有效性是毫无疑问的,但是如果您刚刚起步,会面临一个选择:付费的,还是开源的? 如果您的测试已经自动化,可能还会遇上一些其它的问题。如:在自动化测试框架和脚本这些技术上的支出比它们所创造的价值更多;又或者是你想提升自动化测试的处理速度。自动化测试的覆盖范围和职责是什么?团队负责的任务是什么?最重要的问题是:如何整合自动化测试到软件开发周期中来提升质量和效率? 与信必优合作,我们的自动化测试解决方案会帮助您获得最大的价值。 我们的特 点 我们对您需要的工具有深刻的认识,能帮您挑选哪种才是最适合您的。在此之上,我们开发了一整套工具并对开源框架进行扩展,它们提供了更完整和更特色的体验,可以更快速地实现市场价值。 我们提供灵活的交互模式来满足您的需求。如果您需要咨询,一个专注的团队或者团队支持,我们会针对您的需求提供解决方案。 为客户带来的价值 减少手工化的工作 更专注于总体测试 提升测试覆盖率 加快软件系统的发布流程 我们的自动化测试方 法 我们采用敏捷测试金字塔作为我们敏捷测试策略的基础。它展示了各个测试层次所需要的工作量。传统来说,大多数工作都集中在GUI这个层面上。在GUI这层上,测试要非常小心,而且维护起来是很昂贵的。在这种模式下

Monkeyrunner自动化测试由浅入深(第一节)

自古美人都是妖i 提交于 2019-12-05 17:44:25
(原版)Monkeyrunner自动化测试由浅入深(第一节) 博主原创,请勿转载 第一、相关软件和环境的配置 1、Android sdk下载和配置 2、java jdk下载和配置 第二、Monkeyrunner认识 Monkeyrunner是Android SDK中提供的一个测试工具,存放位置在SDK-tools中,以bat文件存在,即monkeyrunner.bat,双击此文件即启动monkeyrunner(启动是不是很简单,小编之前还以为monkeyrunner是需要何等高级配置) 官方定义(官方地址: http://developer.android.com/tools/help/MonkeyDevice.html ):monkeyrunner工具,其本身提供了一个API来供大家编程啦,用以控制一个android设备或者模拟器,而不用了解这个android及其应用的源码。有了monkeyrunner,我们可以写一个Python(monkeyrunner指定脚本语言,不会没关系,继续看)的程序来安装android程序或者测试包,运行编写好的脚步语言,则通过monkeyrunner则会给模拟器或者真机发送一系列控制事件,并且测试的过程中,还可以自定义重要步骤的截图(代码自动完成)。monkeyrunner的工具的作用是在功能/框架层上测试应用和设备,跑单元测试用例

如何选择正确的自动化测试工具

二次信任 提交于 2019-12-05 16:40:41
自动化测试正在逐步取代部分手动测试,因为它可以节省时间并提高测试质量。特别是在进行回归测试的情况下,自动化可以通过多种方式提高效率。手动进行重复测试是浪费时间和资源。此外,由于重复测试可能会遗漏,因此存在一定的错误范围,但是自动化中发生错误的可能性很小。但是什么是自动化测试?简单来说,自动化测试就是通过重复执行预定义的动作来执行测试用例的系统来代替人工操作。为了充分利用自动化,必须选择正确的自动化测试工具。 自动化测试工具的类型 记录和重放:此类别中的工具为自动脚本提供了记录选项。屏幕上的每个交互(例如点击,滚动或键入)都将被记录并转换为自动化步骤。可以重播已录制的脚本以执行操作并验证。 基于坐标的识别:此类工具在x/y坐标的帮助下与被测应用程序交互,以自动化和验证应用程序。 本机对象识别:使用本机对象识别的工具可检测给定元素树上的UI或控件元素。该树由XPATH,XML或CSS构建,以标识元素,验证和自动化脚本。 文字识别:文本识别:文本识别或(OCR)光学字符识别工具可根据其文本识别元素。这些工具使用可见文本来推动自动化并验证应用程序。 图像识别:这些工具会获取产品中UI元素的屏幕截图,以将其添加到自动化脚本中。这些屏幕截图将帮助AUT自动执行。 许多测试自动化工具支持多种识别方法,这对于获取更强大的自动化脚本很有用。现在让我们看看选择自动化测试工具时要考虑的因素。 平台支持

web自动化测试是什么?

我的梦境 提交于 2019-12-05 11:49:51
1.自动化是什么?   定义:使用机器设备代替人工自动完成指定目标的过程   实际生活中的例子:工厂中螺丝的自动生成   good:减少人工劳动力、提高工作效率、产品规格统一标准、规模化(批量生产) 2.自动化测试是什么?   定义:让程序代替人工去验证系统功能的过程   软件测试:校验系统是否满足规定需求,校验预期结果和实际结果之间的差别   实际生活中的例子:阿里的仓储   可以解决的问题:     回归测试:项目在发新版本之后对项目之前的功能进行验证     压力测试:多个用户同时操作软件,统计软件服务器处理对用户请求的能力     兼容性测试:不同的浏览器上软件是否显示正常     提高测试效率,保证产品质量   good:在较少的时间内运行更多和测试用例      自动胡脚本可重复执行      减少人为的错误      克服手工测试的局限性   注意点:      自动化测试不能完全代替手工测试      自动化测试和手工测试没有谁更厉害之分      自动化测试并不能发现更多的bug      自动化测试适合部分功能   分类:     web自动化测试(黑盒)、移动自动化测试、接口自动化测试(灰盒)、单元自动化测试(白盒)  3.web自动化测试是什么?   定义:让程序代替人工自动验证web项目功能的过程(预期结果和实际结果的比较)   使用场景:需求稳定、周期长

我的自动化测试之路

对着背影说爱祢 提交于 2019-12-05 10:03:12
因为我一直在分享自动化测试技术,所以,时常被问到: 功能测试想转自动化,请问应该怎么入手?或者有哪些书推荐? 那么,接下来我就结合我的经历聊一聊我是如何在工作中做自动化测试的。 我的软件测试职业开始和大多数最普通的测试人员一样,一开始在一家幼儿教育平台的公司做软件测试,公司最开始只我人一位软件测试人员,没有任何流程和规范,但好在工作比较轻松,这就导致我有充足的时间学习各种测试技术和工具。 当你认为工作很闲时,这正是你可以有更多的时间投入学习的时候,但是,学习的内容一定要基于自己的工作来,这样才能把学来的技术变成工作经验。 当时,有一些机会在工作中做性能测试,于是,学会了使用LoadRunner和JMeter,有一次需要测试MySQL数据库的性能,用JMeter搞了半天不知道怎么设置,结果叫一位开发的同事帮我过来很快就搞定了。 这让我认识到开发知识对于测试工作的帮助,编程语言的能力会决定你测试技术的深度。 大概在2013年的时候,脚本语言变得越来越流行,我正纠结学习Python还是Ruby,后来,我被分到社区项目的测试工作,公司产品开始选用Python开发的,所以,我毫不犹豫的选择了Python。 如果你不知道学习什么编程语言,那么就根据项目的开发语言来,这也会有助于你对测试的bug的理解。 接着,开始用Python语言和Selenium来尝试做自动化测试。那时