BTestLab浏览器稳定性自动化测试开发框架介绍
更新时间:2022-05-18 09:24:57 作者:多测师 浏览:281
浏览器的稳定性一直是大家最关注的,因此浏览器稳定性自动化工具的选择尤其重要。经历了一段时间的探索,在市面上并未发现有类似相关的工具来测试浏览器的稳定性。经过我们的探索和研究,决定自行进行浏览器稳定性工具的开发。这里对工具作以简单介绍。
支持的浏览器:
支持目前所有浏览器的测试。
需求的确定:
仔细分析浏览器用户的行为,发现莫过于4种:打开新网址,点击网页中的网址,切换标签页,关闭标签页。不同用户的使用频率可能会不一致,但大致行为逃不出其中。明确了这一点后,对自动化中所需要执行的用户操作就一目了然了。
开发工具的选择:
浏览器在不同的电脑,不同的操作系统上运行的稳定性都有所区别,我们需要能在各个不同的系统环境中轻松运行的测试工具,因此我们选择了C#开发windows应用程序客户端,不需要搭建开发环境,拷贝即用。
测试模型:
自动化工具需要同时运行在不同的电脑环境中,但需要得出统一的报表和一致的运行参数,其执行数据才有意义,因此我们采用了C/S模式。所有客户端的执行结果均会统一上传到服务器,由服务器来统一展现运行结果。
测试结果展现:
测试结果需要统一展现,我们采用access数据库,事实证明在30万条数据以下,access的执行效率并不低,虽然access自身并没有数据库锁的实现机制,但我们可以通过在程序中加上锁来解决数据库存取冲突问题。之前用过sqlite的数据库,但sqlite在64位和32位机器上所用的dll不一致,会有一些兼容性问题。
测试报表的导出:
测试报表最终会自动导出到excel表格之中
评判指标:
自动化测试需要运行很长的时间,我们主要记录浏览器崩溃,假死,异常关闭以及每小时故障数等指标,这些指标能很好的反映浏览器的稳定性。
测试过程跟踪:
仅仅记录下浏览器的崩溃假死情况并不够,在测试之后,我们需要提供给开发一系列的日志来保证问题的重现和调研。因此我们会记录下详细的操作日志,崩溃或假死时自动收集dump信息,测试中保存截图日志等等信息。并且支持从操作日志来自动重现场景。
参数的配置:
不同用户的使用习惯不一样,因此需要模拟不同的测试场景。我们尽量用参数来定义每一个用户操作行为。目前已经实现的可配参数主要有:浏览器路径以及相关参数,测试执行时间,操作频率,日志记录数,内存上限,是否启用自动监控,自动截图,打开新网址概率,关闭标签概率,切换标签概率,点击网址概率,等等。
服务器远程控制功能:
为了在服务器上来控制客户端执行指定的操作,加入如下功能:远程同步配置,远程升级,设定测试浏览器,开始测试,结束测试,杀浏览器进程等等。
工具实现简单介绍:
数据库:采用access作为数据库。
通信:采用socket通信。
语言:采用C#。
开发工具:VS2008。
设置:采用INI文件。
执行:多线程方式。
模拟操作:采用windows API。
检测崩溃:采用注入dll方式捕获异常
报表导出:EXCEL
以上内容为大家介绍了BTestLab浏览器稳定性自动化测试开发框架介绍,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/
上一篇:QTP使用中的陷阱-自动化测试