慧眼自动测试平台
一种用于软件开发的自动化测试平台
用户使用说明书
本软件是一种:计算机软件系统开发时使用的,测试用,工具性软件系统。
工具的主要用途是将软件测试过程自动化。
工具的主要特征是:
1.
高度集成AI技术
2.
一次录制多次回放
3.
无需设定测试预期值
4.
跨操作系统
5.
跨PC和手机平台
实现自动化测试能力的基本思路是(依顺序):
1. 录制测试步骤。通过把测试人员在软件系统中的操作步骤录制下来,形成文件保存,可供后续多次测试使用;
2. 自动执行。通过服务器平台进行测试规划,在终端测试机上自动执行已经录制好的操作步骤,同时对被测试软件系统的运行结果进行保存;
3. 对比运行结果。通过对先后两次运行结果进行对比比较,判断程序执行是否正确无误;
4. 创建测试报告。通过整理比较结果,自动生成可供软件开发和管理人员阅读的测试报告。
在实际应用中,因为计算机软件开发所采用的平台和技术多种多样,我们对此进行了大量的适配工作,目前已经可以做到两种结构的软件系统测试,分别是:B/S(浏览器/服务器)结构系统,和 C/S(客户端/服务器)结构系统。
在B/S模式下,可以做到用Edge浏览器录制一次测试脚本,可以在其他多种不同浏览器上自动运行,包括但不限于Firefox,Chrome,IE,Edge等。
同时本软件平台支持不同操作系统(OS)下的软件测试,包括但不限于Windows,Android,iOS等。
除了PC平台,本软件也支持手机APP开发过程中的测试,安卓(Android)和苹果OS(iOS)。
随着AI技术蓬勃发展,本软件平台在软件实现的各个步骤中,均深度集成了AI功能,提高系统灵活性和测试准确性。
本软件设计思路与技术选型均为原创,希望能为提高国家软件产业效率贡献一点力量。
运行环境
最低硬件安装环境:
服务器:内存8G,处理器2G双核,网络5M,硬盘100G
客户端:内存8G,处理器2G双核,硬盘20G
软件环境
服务器:操作系统 Linux(Ubuntu,Redhat, 支持Docker)
客户端:window7以上,MacOS,Android,iOS
被测试软件环境
服务器:后台应用(Linux,Solaris)
客户端:全平台
本软件需要专业安装团队进行现场安装部署和调试。
软件系统拓扑图:
注释:
1. 终端中包含下列模块:
浏览器控制模块,Windows系统可执行文件(.exe)文件控制模块,批处理程序控制模块,AI模块,图像处理模块,网络通信模块,配置文件管理模块,加密解密模块,驱动引擎模块(用于录制用户操作行为以及回放),等。
2. 网关服务器中包含下列模块:
通信模块,计时模块,任务管理模块,更新模块,DB访问模块,许可证及身份验证模块,等。
3. 中心服务器中包含下列模块:
中间件包(MQ,Redis,Ngnix,等),中央控制台软件,等。
4. 比较服务器中包含下列模块:
队列模块,AI模型,比较算法,报表模块,等。
5. 体系中可以有唯一的网关服务器,唯一的中心服务器,多台比较服务器,和多台终端。
慧眼自动测试平台中控台包含以下几个模块:
1. 测试计划管理模块,其中包括:新建测试计划,打开测试计划,修改测试计划信息等功能。
2. 测试计划制定模块,其中包括:设定测试脚本,分配测试任务,指定测试目标环境,导入测试数据等功能。
3. 测试脚本管理模块,其中包括:展示全部测试脚本,管理测试脚本,导入导出测试脚本等功能。
4. 运行状态监控模块,其中包括:展示执行队列列表,展示执行状态,管理执行队列等功能。
5. 运行结果比较模块,其中包括:展示测试结果列表,展示比较状态,设置比较基准等功能。
6. 测试报告查看模块,其中包括:以测试计划-测试单元二级列表展示测试报告列表,查看测试结果报告,下载测试报告等功能。
7. 工具包模块,其中包括独立的:图像比较小工具,目录结构比较小工具,数据比较小工具,文件比较小工具等功能。
8. 配置模块,其中包括对测试项目的配置功能,如测试基本信息修改,测试团队管理,权限管理,
9. 用户信息管理模块, 其中包括:修改用户基本信息,修改密码等功能。
10. 帮助模块,其中包括:用户手册,联络技术支持等功能。
11. 管理员模块, 其中包括:用户管理,权限管理,重新分配项目等功能
慧眼自动测试平台终端包含以下几个模块:
1. 录制控制器模块,其中包括:开始录制,暂停,结束功能。
2. 项目信息查看模块,其中包括:项目信息查看,选择任务等功能。
3. 终端设置模块,其中包括:修改终端名,增减待测exe程序等功能。
本自动化测试平台是一个专业的软件工具,用于软件开发过程中提高测试效率。通过将软件测试人员的可重复性工作自动化,达成仅需录制一次测试步骤,即可在不同平台多次重现记录下来的测试步骤,然后再将目标程序的运行结果记录下来,并与标准结果进行比对,已达到发现程序运行错误(bug)的目的。
因此,在使用本平台进行测试之前,用户必须先拥有一个开发基本完成,可以进入测试阶段的计算机软件系统。同时,必须准备好本系统的服务器软硬件环境,以及测试终端的软硬件环境。
详细信息请咨询专业团队。
软件工程中定义测试过程有如下几个阶段:
1. 测试计划:制定测试目标、范围、方法、资源和时间表。
2. 测试设计:根据测试计划,设计测试用例、测试数据和测试环境。
3. 测试执行:运行测试用例,记录测试结果和发现的问题。
4. 测试评估:分析测试结果,评估软件的质量和风险,提出改进建议。
5. 测试报告:汇总测试过程和结果,编写测试报告,向相关人员报告测试情况。
本自动测试平台可以接管第3,4,5三个阶段,测试计划(test plan)和测试用例(test case)的设计仍然需要软件开发者在开发过程中进行定义。本平台虽然不能自动进行软件测试的设计,但是可以接收设计的成果,并根据测试设计进行自动化执行,评估和报告。
下面介绍详细的操作方法。
对每个不同的软件开发项目,可以在本平台中控台创建测试项目与之对应。
a)在首页面点击“新建项目”。
a)
b)在“新建项目”页输入测试项目的基本信息,然后点击“创建”,就可以在系统中创建一个测试项目了。
b) 项目基本信息
随后系统将进入测试计划页面,表明新建项目成功。
配置项目信息,对应着导入测试计划。
a)在首页面点击项目列表中的项目名称,打开计划管理页面。
a)
b)点击配置按钮,打开配置页。
b)
c)在项目信息配置页,可以更改项目名称,起止日期,负责人,和团队。
c)
d)在测试终端管理页,可以增减参与本项目测试的终端设备,红色表示设备离线。
d)
e)在团队管理页,可以查看和管理团队成员。团队成员可以接收测试计划,并录制和上传测试脚本。
e)
f)在AI配置页,可以更改
f)
g)在通用配置页,可以查看和更改测试项目的一些通用设置。
g)
h)在许可证页,可以查看许可证信息。
h)
每个项目中可以包含多个测试计划,以实现各模块分割测试,组合测试,多轮测试等目标。
a)在测试计划管理页,点击新建计划。
a)
b)在新计划创建页
-输入测试计划名称。
-确定运行方式为手动运行或定时运行,若选择定时运行则需要指定计划运行时间。
-计划创建时间和责任人为当前登陆用户,不可更改。
-向计划中添加测试脚本,在列表内的测试脚本将会跟随测试计划安排自动执行(参考步骤c)。
-点击写入运行队列按钮,当前测试计划将进入运行队列等待执行。
-若列表中仍存在未录制上传的脚本,则测试计划无法进入运行队列执行。
b) 4) 3) 2) 1)
c)有三种方式向测试计划中添加测试脚本
-新建脚本。
-导入脚本,需使用系统提供的模板,整理数据后导入。
-从库中挑选脚本。
在新建脚本页中,可以批量创建脚本,需要输入脚本名称和备注信息。脚本名称确定后,系统将提示相关信息,若该名称下的脚本已经存在于脚本库中,则直接使用库中内容。
点击增加脚本按钮,可以增加一个新条目。
确定后,信息同时进入测试计划和脚本库中。
c)
d)在导入脚本页面,选择要导入的数据文件后,文件中的内容将被自动读取,并显示在列表中。导入的数据在列表中可以编辑,并可以向列表中手动增加新的条目,功能与新建脚本一致。确定后信息进入测试计划和脚本库中。
d)
e)在选择页面可以从脚本库中挑选现存脚本进入当前测试计划中。选好后,点击确定。
e)
当计划内的测试脚本全部录制上传完成后,测试计划即获得可执行状态,此时可以将测试计划加入执行队列等待执行。
跟随下面的说明,用户将可以安排测试计划的执行方式和执行时间,并自动执行录制好的测试脚本。自动执行过程结束后,测试的结果将同时被保存在服务器上,以备结果对比使用。
结果对比过程将在测试过程结束后自动运行,对比结束后,系统将自动生成测试报表。对比规则可以由AI进行自定义,具体实践需取得专业技术支持。
a)在测试计划页面,选择运行方式。
-手动运行:表示不指定运行时间,仅加入执行队列,随后可以在执行队列中手动启动。
-定时运行:表示指定运行时间,加入运行队列后,系统将按照指定时间启动此测试计划。
a)
b)就绪后,点击写入运行队列按钮,将此测试计划加入运行队列。多次点击写入运行队列按钮,系统将认为用户需要多次执行相同的测试计划,并向运行队列中添加多个同名条目,这些同名条目将串行执行。
-就绪条件:计划中包含的测试脚本全部录制完成。
b)
c)加入运行队列的测试计划也会被同时加入比较队列中,运行过程结束后将自动激活比较过程。
-运行过程中可以手动停止,手动暂停。
-比较过程中可以手动停止,手动暂停。
-在比较过程开始前,可以设定比较基准。
-测试计划执行结束后可以查看报表。
c)
c)
当比较队列中的任务完成后,系统会自动生成测试报告,报告的内容依据于比较的结果。比较的内容基于前后两次运行结果的截图,比较规则可以自定义。具体操作需要取得技术支持。
a)在报告页面,用户可以看到以测试计划和测试脚本为单位生成的测试报告。点击报告图标,查看报告。
a)
b)在报告列表页面,将显示相关测试计划所对应的界面列表,并显示测试结果。点击条目,可查看对比的详细内容。
-若测试计划中存在相关的报表,比如PDF格式下载的报表,则相关测试结果显示在报表比较项下
-若测试计划中存在相关的数据文件下载,比如csv文件,则相关测试结果实在数据比较项下
b)
b)在报告列表页面,将显示相关测试计划所对应的界面列表,并显示测试结果。
自动测试平台可以录制用户的操作过程,并将其保存下来,在需要的时候自动重放整个操作过程,以达到自动测试的目的。跟随下面的说明,用户可以录制自己的测试脚本。
a)打开测试终端程序,可以看到录制页面。
-服务器:显示服务器连接信息。终端不能独立工作,必须从服务器接收任务后才能录制和保存脚本。
-用户选择项目名称和脚本名称,以接收任务分配。
-URL:显示当前脚本所对应的启动网址,可修改。
-项目相关信息:显示项目级相关信息。录制环境为Microsoft Edge(推荐),若录制时未安装,则录制无法启动。
-终端信息:显示当前终端相关信息。
-就绪后点击开始录制。
a)
b)点击脚本名称下拉框,打开选择页面,选择当前开始录制的脚本。
b)
c)点击开始录制按钮,系统将自动启动Edge并打开指定网址,从此时开始到按下结束按钮之前,用户在Edge打开的页面上的操作将被完整录制,录制结束后,脚本将自动上传服务器保存。
若测试目标程序是.exe文件,则需要先在设置页面中指定路径,才可以启动测试,请参照步骤d
c)
测试终端在使用之前需要进行简单的配置。跟随下面的说明,可以为正常使用终端做好配置。
a)点击功能按钮,在菜单中选择设置,打开设置页面,可以对终端进行设置。
-终端信息:展示终端相关信息,可以更改当前终端的用户名。
-服务器信息:指定服务器IP地址。
-Win32目标程序:用以指定待测试的.exe文件安装路径,未指定的.exe文件将无法由系统启动并录制
d)
本自动化测试平台通过模拟器间接进行手机平台的自动化测试工作。测试脚本的录制和播放都由模拟器进行代理,这种方式在不改变整体测试操作方法的情况下,大大拓展了测试平台的兼容性。具体方法说明如下:
a)点击创建项目按钮。
a)
b)在新建项目页面选择项目类型为iOS/iPad,输入全部信息后点击创建,在系统中创建iOS类型的测试项目。
b)
编制测试计划的方法与其他类型的测试项目一致,请参照5.2.3编制测试计划
当测试计划编制完成以后,终端测试机可以进行测试脚本的录制工作。
录制时,模拟器通过实时模拟待测试手机的屏幕,用鼠标指针模拟人类手指行为,对目标APP进行操作,然后将操作行为和结果分别记录为测试脚本和系统使用的其他数据,最终融入通用的自动测试流程。
测试全过程需要手机与测试终端机通过数据线保持连接。被测手机需要提前安装终端程序,并在系统中注册。
跟随下面的说明,用户可以录制手机测试脚本。
a)打开测试终端程序,并选择项目名称和脚本名称,随后点击开始录制
a)
b)在测试开始前需要将手机和终端机用数据线连接。此时,系统将自动寻找连接已经注册的关联手机,并打开模拟器窗口。
b)
c)在模拟器窗口中进行的所有操作,将被系统记录,并形成脚本保存在服务器上。流程和通用测试流程 保持一致。
创建和配置自动测试队列的方法与其他类型的测试项目一致,请参照5.2.4创建和配置自动测试队列
测试自动执行的过程中,需要被测手机与测试终端机通过数据线保持连接。
查看测试报告的方法与其他类型的测试项目一致,请参照5.2.5查看测试报告
测试项目配置的方法与其他类型的测试项目一致,请参照5.2.2测试项目的配置