自动化测试工具开发请问做自动化测试工具类的开发需要掌握哪些方面的技能?

自动化测试工具开发  时间:2021-09-16  阅读:()

如何搭建自己的自动化测试框架

这段时间一直在为公司内部开发 自动化测试框架 ,简称GTF,因为这个框架现在还属于开发阶段,很多事都是言之过早。

我会持续将我在架构过程中的想法写下来。

供自己和大家一起分享。

这些想法,并不属于我一个人,我工作中的同事们给了我很大的帮助。

今天这一篇主要说明架构方面的考虑。

在现有的提供自动化测试解决方案的产品很多,包括:Robot,TestComplete,WinRunner等等。

我只接触过这些,公司里也进行过很大的尝试,但是结果往往总是不竟如人意。

这中间,排除那些人员方面的原因,也总结这些自动化工具 ,在使用过程中的不方便的地方: 1. 定位控件不方便。

标准控件还好,非标准控件就只能靠很多非正常方法去获取。

而且,控件的识别往往和界面布局相关。

3. 代码维护不方便。

由于在编写过程中,大量的和界面相关的代码,导致最后在需求变更的时候,代码的维护,成为软件测试人员的负担。

针对这些情况,我们经过讨论,何不自己做一个软件测试框架。

当然了,这是基于我们的丰富的知识积累的决策。

大家不需要关心这个决策的情况。

不过,可以多关注一些我们在做的过程中的分析结果。

通过分析流行的软件测试框架,有多种方式: 第一、最典型的就是消息驱动,自动化工具通过脚本录制和编写,保存为测试脚本。

在回放的过程中,将这些脚本转换成为Windows消息,发送给我们应用程序的窗体和各种控件。

这种方式的好处在于,自动化工具和应用程序之间能够做到完全的隔离。

但是,由于使用了Windows消息,它也拥有了一个非常致命的缺点。

那就是消息队列的异步性与程序的顺序性之间的矛盾。

很多消息发送给了应用程序,但是应用程序的处理可能已经和消息队列错位了。

有一些关于代码的时间片等待,就是因为这个问题。

另外,就是由于完全的隔离,对于操纵控件数据的能力大大降低。

毕竟,拥有大量数据的控件都不是标准控件。

第二、嵌入式 。

TestComplete就是这类工具。

它有支持不同语言的版本。

大概思路,就是在程序编译的时候,注入自己的控件代理。

脚本的回放,直接可以通过代理,操纵到应用程序。

可惜的是,这类软件开发的时候,更多的是考虑平台的兼容性。

对于特有平台上的支持不是十分完美。

特别是对自定义控件(比如Delphi中,除了VCL的标准控件)支持也没有做到最好。

不过,我这里必须承认,TC的内部实现机制可能十分强大,我不能窥探所有。

如果有人清晰,可以指点一二。

针对上面的两种,我们想到的第三种方式:一体式。

这种方式中,通过给程序在打包的过程中,添加额外的框架代码,使得程序自动提供控件的访问方式。

自动化的模块也会作为软件测试程序的一部分运行。

应用程序在执行脚本的时候,自动通过脚本 ,控制各控件界面的显示和关闭。

它应该是第二种方式的变种。

但是由于是自己实现的,所以在对各类自定义控件支持的都非常好。

针对一开始提出的几个自动化测试的难题,我们提出了,自动封装窗体上所有控件的概念(这些概念后面会详细介绍),对于软件测试人员,只要关心真正的业务操作流程。

而业务流程中涉及到的控件,已经为他们自动提供好。

这样,脚本也自然只成了业务流程的脚本。

其复杂度也就大大降下来了。

如果要推荐2个工具的话,我就推荐泽众软件公司的 自动化测试工具AutoRunner和测试管理工具Testcenter ,用这2个软件合作可以很好的进行自动化测试与对测试用例进行管理。

如何才能做好测试自动化

1.测试自动化类似于软件开发的过程 录制/回放脚本的开发方式是不可能应付所有自动化测试的需求的,因此,需要测试人员掌握必要的开发知识和编码知识。

2.测试自动化是一个长期的过程 首先,不能期望自动化测试在短期内找到很多Bug,自动化测试只有在长期的多次运行后磁能体现它的价值。

其次,不要认为只要购买了工具,录制一些脚本,然后就可以安枕无忧的看着自动化测试实现想要的效果,需要考虑自动化测试脚本维护成本,随着被测试应用程序功能的增加和修改,测试脚本的维护工具量会急剧的增加。

3.确保测试自动化的资源,包括人员和技能 最好有专门的自动化测试工程师来保证测试自动化持续,顺利的进行下去,自动化测试工程师需要对项目测试自动化负责,设计测试框架和脚本结构,解决各种测试脚本的开发问题,确保自动化测试得以计划,设计和有序的开发,维护。

4.循序渐进的开展自动化测试 不要一开始就把自动化设想的很大,这往往是不可实现的,应该从小开始,先熟悉工具和自动化测试的基本技能,然后,整合资源开始实现一些基本的自动化测试用例,例如:冒烟测试类型的自动化测试脚本,先实现那些容易实现的,且相对稳定的功能模块的自动化测试,然后再考虑逐步扩展和补充其他相对难实现,或者是比较不稳定的功能模块。

5.确保测试过程的成熟度 如果软件企业的测试过程和项目管理过程的能力成熟度比较低,则实现自动化测试的成功率也比较低,在开展自动化测试之前,先考察一下软件企业各方面的管理能力,;例如:测试是否独立进行?有无配置管理?进度控制能力如何?如果各方面的能力成熟度都比较差的话,则不要盲目的引入测试自动化。

自动化测试应该是这样的: 自动化应该是一种Service(Automation As A Service),所有的测试人员和开发人员都应该可以自己很方便的去跑自动化 自动化测试的运行结果应该是可以自动分析的,占用很少的时间 自动化测试的成功率应该是要很高的(比如95%以上) 自动化应该是写一次,运行很多次,为什么你们花那么多时间还要去改自动化代码?

现在想转做软件测试,但是自动化工具只是学过而已,没有真正用于工作中,请问下朋友,我要掌握什么呢?

有JAVA开发基础很好找啊,测试需要掌握的东西建议去智联招聘或则51job上看看招聘要求,基本就是数据库,linux,测试理论,软件工程之类的,有开发基础的话应该很容易找到自动化测试的职位吧~~现在测试在北上广这些大城市找的还是很多的,但是公司良莠不齐,多投投简历,多面试几次就全懂了。

自动化测试框架如何搭建

要针对你使用的是什么自动化工具 你的问题太泛指 如果是qtp,使用的是VBScript,那你要根据你使用的开发语言的方式来搭 总体思想是 从底层往上,细化到界面,然后调用界面 基本每次修改不用动到大部分,只要修改最底层的代码,你就算搭建好了 如果平时一改一个地方,要动全身的,那就搭建错误

哪个公司做测试工具自动化开发比较好?要大公司的!

大公司? 你是指MECURY系列的QTP,Loadrunner?那就去HP Rational系列的,那就去IBM 或者.NET平台下的一大堆自动化工具,那就去MS。

事实上,只要是做产品的大公司,自己都有自己的自动化开发团队。

你就是闭着眼睛找也能找到。

请问做自动化测试工具类的开发需要掌握哪些方面的技能?

您好   1、首先你得先定位自己需要开放自动化测试工具为哪类,例如:自动化测试用例管理工具,自动化测试框架类、界面自动化测试工具等   2、根据你所需的自动化测试工具类,对应相应的技能   1)基本技能;编程知识(其实哪一种语言都能进行自动化测试工具开发,不过我推荐:想掌握一些软件开发方面高级一些的思想,可以学学java的OO,一般而言,自动化测试需要开发效率比较高,则可以应用一些脚本方面的语言,例如:tcl、python等。

所以,首先,先掌握基本的编程语法以及编程思想   另外的一个基本技能:你需要简单的去了解一下自动化测试以及其中的一些应用模式,而且需要对测试流程以及基本的测试方法进行学习,就像你做软件工程一样,你也需要适应一定的软件流程,例如:瀑布式、RUP式。

  3)之后,对应不同的工具学习不同的东西,例如:你开发一个简易的界面自动化测试工具,WIN32、web以及java都是用不同的语言,像win32的话,就需要去掌握MS的一些基本知识,例如:句柄的概念、MSAA接口概念等。

java的swing界面的话,就得去看java底层的事件机制,web的话,就去好好了解一下web中的html节点元素,还有js等。

或者你想做一个手机自动化测试工具,andriod,则需要对android的开发进行一些了解了。

这就叫应用不同的技能满足不同的需求阶段。

当然,还有各种不同的自动化测试工具,例如:测试管理以及连接类、CLI命令行控制类,日志生成类等 ,这都是在平时工作中进行总结出来的一些经验,总之,先打好基础。

如果,有什么问题或者想法的话,可以发邮件于我:test_sunny@(散步的SUN),ok,祝你学习愉快~欢迎来到自动化测试的小世界

ParkinHost:俄罗斯离岸主机,抗投诉VPS,200Mbps带宽/莫斯科CN2线路/不限流量/无视DMCA/55折促销26.4欧元 /年起

外贸主机哪家好?抗投诉VPS哪家好?无视DMCA。ParkinHost今年还没有搞过促销,这次parkinhost俄罗斯机房上新服务器,母机采用2个E5-2680v3处理器、128G内存、RAID10硬盘、2Gbps上行线路。具体到VPS全部200Mbps带宽,除了最便宜的套餐限制流量之外,其他的全部是无限流量VPS。ParkinHost,成立于 2013 年,印度主机商,隶属于 DiggDigi...

快云科技,免云服务器75折优惠服务器快云21元/月

近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...

DogYun春节优惠:动态云7折,经典云8折,独立服务器月省100元,充100送10元

传统农历新年将至,国人主机商DogYun(狗云)发来了虎年春节优惠活动,1月31日-2月6日活动期间使用优惠码新开动态云7折,经典云8折,新开独立服务器可立减100元/月;使用优惠码新开香港独立服务器优惠100元,并次月免费;活动期间单笔充值每满100元赠送10元,还可以参与幸运大转盘每日抽取5折码,流量,余额等奖品;商家限量推出一款年付特价套餐,共100台,每个用户限1台,香港VPS年付199元...

自动化测试工具开发为你推荐
range3S压力开关上RANGE和 DIFF是什么意思?文件下载怎么把电脑上的文件下载到U盘里?java队列自己设计一个队列 java项目质量管理工程项目质量管理制度有哪些a8处理器AMD A8的CPU怎么样?短信应用安卓短信软件??jsp源码jsp 中网站的首页源代码4g上网卡联通4g上网卡是什么?木马杀毒木马杀毒到底有什么用?能彻底杀的了吗?摇一摇周边摇一摇周边怎么打开
linuxapache虚拟主机 域名交易网 virpus vpsio 2014年感恩节 iisphpmysql shopex空间 网站监控 xfce 刀片式服务器 免费全能主机 drupal安装 台湾google 国内域名 服务器论坛 成都主机托管 免费个人网页 大化网 时间服务器 达拉斯 更多