如何设计一个自动化测试框架

如何设计一个自动化测试框架

2023年6月29日发(作者:)

如何设计⼀个⾃动化测试框架在进⾏⾃动化框架设计之前我们先来看两个问题,什么是⾃动化框架,设计的时候应该注意什么原则,然后该怎么做?本⽂会以⼀个web端的UI⾃动化测试框架设计为例什么是⾃动化测试框架什么是框架特指为解决⼀个开放性问题⽽设计的具有⼀定约束性的⽀撑结构。在此结构上可以根据具体问题扩展、安插更多的组成部分,从⽽更迅速和⽅便地构建完整的解决问题的⽅案。框架是整个或部分系统的可重⽤设计,表现为⼀组抽象构件及构件实例间交互的⽅法。也就是说框架本⾝不解决特定的问题,它是通过扩展的各种组件或者⼯具来解决问题,并且它可以⽅便的添加或者修改部分组件的功能。什么是⾃动化测试框架什么是⾃动化测试框架,我们拆分来看的话,其实就是三个⽅⾯,⾃动化、测试、框架,什么是框架上⾯说了,还有就是他能执⾏测试,⽽且还是⾃动化的,所以框架的各个组件的主要功能就是围绕着如何⾃动化如何执⾏测试展开的。这⾥可以把框架的各个功能称作模块,那我们来看看都需要那些模块,需要⼀个基础模块,主要是怎么实现脚本编写,管理模块,主要的⾏为是持续集成,定时执⾏、case管理,统计模块,主要是发送测试报告,统计分析。那总结⼀下⾃动化测试框架的定义就是:把在⾃动化测试过程中⽤到的⼀些功能或者⼯具,分装成各个模块,包括如何进⾏⾃动化脚本编写以及分层功能的基础模块,进⾏持续集成、定时任务的管理模块,发送测试报告、进⾏测试结果统计分析的统计模块等,将这些模块组成⼀套可重⽤的⾻架⾃动化测试框架的设计原则通⽤性:能够在各种各样的系统和平台都能够使⽤易维护性:能够把我们的数据、⽤例、框架的实现进⾏独⽴的维护,能够在实现完善的过程,快速的定义到维护的点,⽽不对框架的其他功能造成影响定时处理:能够在指定的时间执⾏持续集成:当被测程序和测试代码有更新能够⾃动执⾏调试:可调试⾏强测试结果:测试报告、测试数据的统计分析框架的设计思想可以把⾃动化测试框架主体分为两部分,⼀个是内部框架,⼀个是外部框架,内部框架就是我们⾃⼰实现的测试框架代码,外部框架就是抛开我们实现的核⼼代码,要达到⾃动化测试框架设计原的⼀些内容时⽤到的⼀些第三⽅⼯具。外部框架主要是指以webdriver为核⼼,辅以外部第三放框架和⼯具。⽤以实现持续集成、⾃动部署、脚本执⾏、远程调⽤、报告优化、邮件发送导等功能性框架,实现⾃动化框架设计原则的⼀些外围的组件。内部框架也就是分层框架,⽬的在于更好的优化和管理测试⽤例,更便捷的进⾏数据、元素、脚本的维护和更快速的创建新脚本⾃动化测试框架设计思路通⽤的外部框架实现逻辑maven或者tox-⾃动编译,执⾏TestNG或junit,集成邮件发送等TestNG或Junit、pytest,调⽤webdriver或者发送请求的⽅法,执⾏⾃动化测试⽤例,规范⾃动化测试脚本selenium脚本或者接⼝⽤例脚本reportNG或者allure报告优化模板main ⾃动以html邮件通知或者Jenkins发送邮件内部框架层架框架-也就是代码结构优化,根据具体的业务和需求可以⼤致分为以下⼏层,有时并不需要下⾯所有的层次,选取合适⾃⼰业务测试的就⾏。TestCase层,执⾏的⽤例脚本Task层,公共业务分装,是其他的项⽬不需要的,只和当前项⽬相关,⽐如公共登陆、搜索等业务utils层:与业务⽆关的⽅法,⽐如数据驱动-也就进⾏数据⽂件的读写、浏览器操作、元素定位⽅法等进⾏封装page层或po层:页⾯层,页⾯层主要维护某⼀个页⾯的所有元素,对页⾯的操作、对元素的操作以及和其他页⾯的交互,业务其实就是⼀个元素到另⼀个元素或者⼀个页⾯到另⼀个页⾯,这就和task层有点重复⼀般有⼀个就可以了。element层:公共元素或者组件的维护,或者⾃定义组件封装data层:数据存储properties层:配置⽂件、全局变量下篇我们将以java和python语⾔⽣态的相关内容实现⾃动化测试框架,敬请关注!!欢迎⼤家去 我的博客 瞅瞅,⾥⾯有更多关于测试实战的内容哦!!

发布者:admin,转转请注明出处:http://www.yc00.com/news/1688019028a67247.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信