自动化测试原理
第3章软件自动化测试工具
软件自动化测试工具是实现软件自动化测试必不可少的关键,因此,选择一个优秀的、适合自己的测试项目实际情况的测试工具是实现成功自动化测试的第一步。本章介绍自动化测试工具的分类,以及如何选择一个合适的自动化测试工具,并且介绍自动化测试工具的基本原理。
3.1自动化测试工具类型测试工具的种类很多,有用于管理测试的,有帮助实现测试自动化的,有开源的,有免费共享的。软件测试工具按照其用途,可大致分成以下几大类:
●测试管理工具
●自动化功能测试工具
●性能测试工具
●单元测试工具。
●白盒测试工具。
●测试用例设计工具。
如果按测试工具的收费方式,又可分为以下几类。
●商业测试工具。
●开源测试工具。
●免费测试工具。
3.1.1商业测试工具
商业测试工具的特点是需要花钱购买,但是会相对成熟和稳定,并且有一定的售后服务和技术支持。但是,由于其价格昂贵,并不是每一个企业都能负担得起。
商业测试工具主要集中在GUI功能测试和性能测试方面,目前流行的基于GUI的功能自动化测试工具有Robot、QTP、TestComplete等。各种自动化测试工具实现的功能基本相同,但是在IDE、脚本开发语言、支持的脚本开发方式、支持的控件等方面则有很多不同之处。
3.1.2开源测试工具
开源软件是指软件的源代码是公开发布的,通常是由自愿者开发和维护的软件。开源测试工具是测试工具的一个重要分支。越来越多的软件企业开始使用开源测试工具。但是开源并不意味着完全的免费,开源测试工具同样需要考虑使用的成本,并且在某些方面可能要比商业测试工具的成本还要高。
可以看到,价格在不断地增长。这对于那些中小型软件企业而言,无疑加大了测试的成本。开源测试工具相对于商业测试工具拥有以下优势:
●相对低的成本:大部分开源测试工具可免费使用,只要不做商业用途即可。
●更大的选择余地:可以打破商业测试工具的垄断地位,给测试人员更多的选择空间。
●可自己改造:源代码开放,意味着可对其进行修改、补充和完善,可对其进行个性化改造。
虽然开源测试工具拥有一定的优势,但是,同时也存在很多不足之处,包括以下几方面。
●安装和部署相对困难:大部分开源测试工具的安装配置过程比较烦琐,需要测试人员付出一定的努力。
●易用性:开源测试工具在易用性、用户体验方面做得不够完善。
●稳定性:部分开源测试工具的稳定性不够强。
●学习和获取技术支持的难度:大部分开源测试工具不提供培训指导和技术支持服务,联机帮助和用户手册不够完善,增加了测试人员的学习难度。
3.1.3自主开发测试工具
目前,很多软件测试组织其实已经具备了自己动手开发测试工具的条件:
●市场对于测试工具的接受程度在不断提高,人们对测试工具的认识不断加强和深入,对测试工具原理的理解不断提高。从脚本化到数据驱动,再到关键字驱动等,很多新的测试工具理念被引入并被广泛接受。
●由于技术的成熟,测试工具变得容易构建。软件系统现在变得更容易测试,可测试性更强,COM、XML、HTTP、HTML等标准化的接口使得测试更加容易进行。托管程序(例如Java、.NET)的反射机制使得查找定位对象,以及捕捉对象和操作对象更加容易。
●一些开源的框架可以被利用。利用开源框架平台来组合、搭建适合自己测试项目使用的测试平台和测试框架。
自己动手开发测试工具的优势有以下方面。
●购买成本为零。
●简便:只需要开发自己需要的那部分功能。
●个性化:可自己定制需要的功能,随时修改,配置项目组成员的使用习惯。
●可扩展性:可随时增加新的功能。
●可充分利用项目组熟悉的语言开发,利用自己的技术优势。
●可使用自己熟悉的脚本语言,不需要使用商业工具提供的"厂商脚本语言"。
然而,虽然自己动手设计和开发测试工具有很多好处,但是必须考虑随之而来的成本问题。自己开发测试工具的成本只是开发时间和人员投入的成本,以及维护的成本。当然,如果把测试工具推广到其他项目组,则也会有学习和培训成本。另外,需要考虑测试工具的实用性,不要做一个大而全的、面面俱到的、很多功能基本上不会被用到的测试工具。
3.2自动化测试工具选型
为了保证在一个测试团队中成功地应用某款测试工具,尤其是对于大型商业工具的应用,应该首先进行工具的选型,通过分析实际情况,确定选用范围。对选用范围内的几款测试工具进行试用。根据试用的反馈效果决定最终采用哪款测试工具。在大规模使用工具之前,还应该对测试人员进行全面的工具培训。培训后,正式在项目中应用测试工具,制定相应的测试工具使用策略,并把工具融入测试工作中。
3.2.1测试工具评估
测试工具的选型是成功应用测试工具的第一步,测试工具的选型应该注意以下几点:
(1)首先,分析项目的特点,软件系统采用的开发工具、语言、技术、平台等。还要结合测试的类型、测试的要求。
(2)同时还要了解目前存在的各种测试工具的情况,包括工具的生产厂家、价格、产品特性、技术支持和售后服务情况,还要了解该工具的市场占有率、使用人群等情况,如果是国外厂商生产的测试工具,最好再了解清楚国内的代理机构的情况等。
(3)选型的最后一步是编写选型报告。通过综合分析所有收集回来的材料,横向比较测试工具的优势和劣势。
3.2.2测试工具试用
在初步选型后,可定出几个满足要求的测试工具,然后进行深入的试用工作,应该尽可能尝试测试工具的所有功能,并且可能的话,要尽量在项目的软件系统中尝试。
需要制定一份详细的测试工具的试用计划,因为这可能是一项长时间的、需要谨慎进行的工作,尤其是对于那些商业的测试工具,动辄上百万的购置费用。很多公司由于没有谨慎进行前期的选型和试用工作,导致购买的测试工具不适用,或者使用效果不理想,最后被测试人员扔在角落里。
不要仅仅听信测试工具销售人员的介绍就轻易购买,一定要自己组织一次详细的试用活动,确认适合在项目中使用,才能购买。
3.2.3自动化测试工具的培训
确定了选用的测试工具后,正式在测试项目中使用该测试工具之前,还需要组织相关测试人员进行测试工具的培训。测试工具的培训可包括以下内容。
(1)测试工具的总体介绍主要给测试人员讲解测试工具包括哪些主要的功能和特性,可用于哪些方面的测试。
(2)测试工具操作方法介绍主要给测试人员讲解测试工具的每一项功能的使用方法、操作步骤、注意事项等方面的内容。一般可由工具厂商派遣的技术支持人员进行,也可由熟悉该工具的测试人员来介绍,例如,负责前期测试工具试用的测试人员。
哈尔滨工业大学 制造系统自动化技术作业 题目:零件质量的自动化检测系统设计 班号: 学号: 姓名: 作业三零件质量的自动化检测系统设计
PS 一、零件结构图 二、自动检测项目 (1)孔是否已加工? 如图1所示,利用光电传感器来检测孔是否已加工。1PS 、2PS 、3PS 三个光电 传感器接受光信号,其中1PS 和3PS 检测从凸台两侧反射回来的光信号,2PS 检测从凸台中心线出反射回来的光信号。当孔已加工则所测得的波形如图3中2PS 所示,若孔还没有加工 则2PS 所测得的波形和1PS 、3PS 所测得的波形相同,故可以通过波形来确认孔是否已加工。 2 工件检测示意图图 3 检测波形图 )面A 和B 是否已加工? 图4为检测A,B 面是否加工的检测原理图,光电传感器发射装置发射脉冲, PG 2
若两个面均已经加工,则接收装置可以在工件经过时候接收到光电脉冲。若A,B 面没有加工,则在工件经过时检测不到光电脉冲。 图4 工件检测图 (3)孔φ15±0.01精度是否满足要求? 方向设计一个类似于塞规的测定杆,在测定杆的圆周上沿半径方向放置三只电感式位移传感器。测量原理如图所示。假设由于测定杆轴安装误差,移动轴位置误差以及热位移等误差等导致测定杆中心O1与镗孔中心O存在偏心e,则可通 过镗孔内径上的三个被测点W1,W2,W3测出平均圆直径。在测定杆处相隔τ,φ 角装上三个电感式位移传感器,用该检测器可测量出间隙量y 1,y 2 ,y 3 。已知测 定杆半径r,则可求出Y1=r+y1,Y2=r+y2,Y3=r+y3。根据三点式平均直径测量原理,平均圆直径D0=2×(Y1+aY2+bY3) 1+a+b ,公式中a,b为常数,由传感器配置角决定,该测量杆最佳配置角度取τ=φ=125°,取a=b=0.8717。偏心e的影响完全被消除,具有以测定杆自身的主机算环为基准值测量孔径的功能,可消除室温变化引起的误差,确保±2μm的测量精度。 图5 孔径测定原理图
《化学反应原理》测试题1 可能用到的原子量:H .1 O .16 Cu. 64 A g .108 一、选择题(本题共25小题,每小题2分, 共50分,每小题只有一个选项符合题意) 1.下列关于水的说法错误的是()。 A.水是生命活动必不可少的物质 B.水是含有极性共价键的化合物 C.水的电离是放热过程 D.水是极弱的电解质,在50 ℃时水的pH小于7 2.下列说法正确的是()。 A.凡是放热反应都是自发的 B.铁在潮湿空气中生锈是自发过程 C.熵增大的反应都是自发反应 D.电解池的反应是属于自发反应 3.相同温度下等物质的量浓度的下列溶液中,c(NH4+)最大的是()。 A. B. C. D.NH3.H2O 4.常温时,将pH=3的盐酸和pH=11的氨水等体积混合后,所得溶液的pH()。 A.等于7 B.大于7 C.小于 7 D.无法确定 5.氯化铜溶液中含有少量氯化铁杂质,若要制得纯净的氯化铜(Fe(OH)3沉淀的pH是3.7,Cu(OH)2沉淀的pH是6.0),向溶液中加入下列试剂,不能达到目的的是()。 A.NaOH B.CuO C.Cu(OH)2 D.Cu(OH)2CO3 6.常温时,将足量的AgCl固体分别加入同体积的下列各溶液中,溶解的AgCl最少的是()。 A.1 mol·L-1的MgCl2溶液B.2 mol·L-1的NaCl溶液 C.1.4 mol·L-1的BaCl2溶液 D.1 mol·L-1的AlCl3溶液 7.下列说法正确的是()。 A.可逆反应的特征是正反应速率和逆反应速率相等 B.在其他条件不变时,使用催化剂只能改变反应速率,而不能改变化学平衡状态 C.在其他条件不变时,升高温度可以使平衡向放热反应方向移动 D.在其他条件不变时,增大压强一定会破坏气体反应的平衡状态 8.下列说法正确的是()。 A.K W随浓度的改变而改变 B.K sp只与难溶电解质的性质和温度有关,而与溶液中的离子浓度无关 C.对已达到化学平衡的反应,改变压强,平衡常数(K)一定改变 D.一般情况下,一元弱酸HA的K a越大,表明该酸的酸性越弱 9.下列说法正确的是()。 A.含有H+离子的溶液一定呈酸性 B.0.1 mol/L KOH溶液和0.1 mol/L氨水中,其c(OH-)相等 C.pH为1的盐酸的c(H+)是pH为3的盐酸的100倍 D.Na2 CO3溶液中,c(Na+)是c(CO32-)的两倍 10.用锌和1 mol/L稀硫酸溶液制取氢气,欲提高制取氢气的速率,下列措施不可行的是()。 A.改用98%的浓硫酸 B.使用更小颗粒的锌粒
自动化测试用例设计 序言:自动化测试中,自动化测试用例是一个重点中的重点,个人以为,到底如何去定位自动化测试用例设计的形式和发展是决定自动化测试成败的关键,根据一些研究和看法,我写了一个自动化测试用例设计的一个大概情况,当然一家之言而言,当然,大家在测试过程中,接触过自动化测试的,肯定就接触过自动化测试用例,其是自动化测试脚本本身也是一种自动化测试用例,看看以下的情况大家遇到过么,希望大家有什么想法,提出来吧。 一、自动化测试用例应用 手工测试用例是针对手工测试人员,自动化测试用例是针对自动化测试框架,前者是手工测试用例人员应用手工方式进行用例解析,后者是应用脚本技术进行用例解析,两者最大的各自特点在于,前者具有较好的异常处理能力,而且能够基于测试用例,制造各种不同的逻辑判断,而且人工测试步步跟踪,能够细致的定位问题。而后者是完全按照测试用例的方式测试,而且异常处理能力不强,往往一个自动化测试用例运行完毕后,报一堆错误,对于测试人员来定位错误是一个难点,这样往往发现的问题很少。所以,根据其各自的特点,需要将两者有很好的定位:手工测试是在软件版本前几轮测试的重点,目的是验证功能,发现问题;自动化测试是应用在后几轮版本,保证软件版本模块修改或者添加新功能后,没有影响开始的功能模块(因为软件中,各模块之间的接口以及类、函数方法等的互相引用,也是容易出问题的地方)。 二、自动化测试用例设计发展 1、自动化测试用例设计发展前期 记得,当时的自动化测试开展是针对测试设备设计一套测试环境系统,用于自动化例行测试,根据此,专门撰写了一套自动化测试用例,并转化成自动化测试脚本。之后整套系统都失败了,失败原因包括: a、系统太过于庞大,测试用例也过于繁琐,每次测试运行下来,测试结果都夹杂着一大堆各种错误,有可能是产品问题,有可能是脚本问题,也有可能是用例问题,这样下来,测试人员每次运行一遍都要面对大量的问题,维护的几次就放弃了,问题越来越多,根本没办法去定位,这样反而浪费了大量的成本和时间。 b、搭建的一套测试环境系统,各个产品功能模块都互相联系在一起,都互相有影响,容易造成问题。 c、更重要的是,由于是单独搭建的一套测试环境系统,其自动化测试用例与手工测试用例没有太大关系,这样就造成了其自动化测试很难对手工测试进行辅助。 2、自动化测试用例设计发展前中期 这时,自动化测试用例来源于手工测试用例,首先,自动化测试根据手工测试用例进行转换而来(举个例子:CLI测试时,自动化测试用例是根据手工测试用例的步骤,将其需要输入的CLI命令和回显进行填写),之后,自动化测试脚本人员根据其自动化测试翻译为脚本。这样做的好处就是手工测试用例与自动化测试用例的结合,保证了自动化测试的明确性,后期的改进还包括 a、将自动化测试用例根据手工测试用例进行了分层,把一些共性功能和全局变量抽象到了更上一层,保证复用性和降低维护性。 b、设计的自动化测试框架的管理。 经过一段时间之后,问题还是很大,主要问题在于
软件测试工具汇总 一、工具汇总 1.免费工具 下表中针对WEB页面或B/S结构进行功能和性能测试的工具有: 开源功能自动化测试工具:PureTest,OpenSTA,Watir、Selenium、MaxQ、WebInject、Fitnesse 开源性能自动化测试工具:Jmeter、OpenSTA、DBMonster PureTest Minq公司功能测试商业 免费 本是业内商业自动化测试工具之一,如今PureTest已经免费。它专注于对WEB应用程序进行功能自动化测试,并即时对WEB页面元素进行检 测,对HTTP请求、响应进行诊断分析。 PureTest is an application which is primarily used to setup scenarios of tasks, execute and debug them. Even though it supports testing a variety of applications it is especially useful for debugging and snooping of web applications. PureTest includes a HTTP Recorder and Web Crawler which makes it useful for generic verification of HTTP requests and web content checking. The normal way to access web sites is via a browser; however, there are times when it is desirable to bypass the browser and access a site from a program, including: Debugging of HTTP requests and responses Automated web site testing The HTTP Recorder simplifies the process of capturing all requests that are exchanged between a browser and the web server. Then use PureTest to replay each request in order to carefully watch the HTTP data that is transferred on the wire (HTTP headers, request parameters, response headers and response content). The Web Crawler is useful to pro-actively verify the consistence of a static web structure. It reports various metrics, broken links and the structure of the crawled web. Test scenarios that be saved to file and later be repeated, to verify that you server applictaion works as expected. This can be done using the PureTest debugger in the grapical user interface, but also using a command line interface. PureLoad Minq公司负载压力测 试 商业 免费 PureLoad正是一款基于Java开发的网络负压测试工具,它的Script代码 完全使用XML,所以,这些代码的编写很简单,可以测试各种C/S程序, 如SMTP Server等。它的测试报表包含文字和图形并可以输出为HTML 文件。由于是基于Java的软件,所以,可以通过Java Beans API来增强 软件功能。
高二化学反应原理第二章化学反应的方向、限度和速率测试题含答案 质量检测 第Ⅰ卷(选择题,共54分) 一、选择题(本题包括18个小题,每题3分,共54分。每题只有一个选项符合题) 1.下列反应中,一定不能自发进行的是() (s)====2KCl(s)+3O2(g) ΔH=- kJ·mol-1 ΔS=1 110 J·mol-1·K-1 (g)====C(s,石墨)+1/2 O2(g) ΔH = kJ·mol-1ΔS=- J·mol-1·K-1 (OH)2(s)+2H2O(l)+O2(g)====4Fe(OH)3(s) ΔH =- kJ·mol-1 ΔS =- J·mol-1·K-1 (s)+CH3COOH(aq)====CO2(g)+CH3COONH4(aq)+H2O(l) ΔH = kJ·mol-1ΔS = J·mol-1·K-1 2.下列反应中,熵减小的是() A、(NH4)2CO3(s)=NH4HCO3(s)+NH3(g) B、2N2O5(g)=4NO2(g)+O2(g) C、 MgCO3(s)=MgO(s)+CO2(g) D、2CO(g)=2C(s)+O2(g) 3.反应4NH3(气)+5O2(气) 4NO(气)+6H2O (气)在10L密闭容器中进行,半分钟后,水蒸气的物质的量增加了,则此反应的平均速率v(X)(反