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

自动化测试工具开发  时间: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,祝你学习愉快~欢迎来到自动化测试的小世界

Ceraus24元/月,国庆促销 香港云上新首月五折

Ceraus数据成立于2020年底,基于KVM虚拟架构技术;主营提供香港CN2、美国洛杉矶CN2、日本CN2的相关VPS云主机业务。喜迎国庆香港上新首月五折不限新老用户,cera机房,线路好,机器稳,适合做站五折优惠码:gqceraus 续费七五折官方网站:https://www.ceraus.com香港云内存​CPU硬盘流量宽带优惠价格购买地址香港云2G2核40G不限5Mbps24元/月点击购买...

7月RAKsmart独立服务器和站群服务器多款促销 G口不限量更低

如果我们熟悉RAKsmart商家促销活动的应该是清楚的,每个月的活动看似基本上一致。但是有一些新品或者每个月还是有一些各自的特点的。比如七月份爆款I3-2120仅30美金、V4新品上市,活动期间5折、洛杉矶+硅谷+香港+日本站群恢复销售、G口不限流量服务器比六月份折扣力度更低。RAKsmart 商家这个月依旧还是以独立服务器和站群服务器为主。当然也包括有部分的低至1.99美元的VPS主机。第一、I...

OneTechCloud香港/日本/美国CN2 GIA月付9折季付8折,可选原生IP或高防VPS

OneTechCloud(易科云)是一家主打CN2等高端线路的VPS主机商家,成立于2019年,提供的产品包括VPS主机和独立服务器租用等,数据中心可选美国洛杉矶、中国香港、日本等,有CN2 GIA线路、AS9929、高防、原生IP等。目前商家针对全场VPS主机提供月付9折,季付8折优惠码,优惠后香港VPS最低季付64元起(≈21.3元/月),美国洛杉矶CN2 GIA线路+20Gbps防御型VPS...

自动化测试工具开发为你推荐
实验室方案设计实验室设计有什么要求呀expire英语:expire能用来说人去世了吗阿里校园招聘阿里巴巴校园招聘内推有什么优势模糊数学模糊数学的产生教育城域网怎样进入寿光教育城域网网站支付宝账单查询支付宝怎么查询交易记录小项目家庭办厂小项目有哪些?家庭小厂60个jsp源码帮忙编个JSP代码招行信用卡还款我是招行的信用卡!该怎么还款网络图绘制双代号网络图的绘制方法?
双线主机租用 免费动态域名 suspended 12u机柜尺寸 铁通流量查询 空间出租 中国电信宽带测速器 银盘服务 学生服务器 服务器硬件配置 国外免费网盘 nnt 蓝队云 qq部落24-5 winscpiphone ddos攻击教程 qq空间论坛 100m空间多少钱 百度空间登陆首页 免费空间申请 更多