一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种软件测试系统的制作方法

2023-02-01 22:08:12 来源:中国专利 TAG:


1.本发明涉及软件并发量测试技术领域,具体涉及一种软件测试系统。


背景技术:

2.性能测试在软件质量保障中有着至关重要的作用,软件能否稳定运行和其性能直接相关,所以一个软件在上线使用之前都要对其进行性能测试,而性能测试主要包括三个方面:软件在客户端性能的测试、软件在网络上的测试和软件在服务器性能的测试,其中软件在客户端的性能测试,是站在客户端的角度上进行测试,测试的入口是客户端,主要目的是为了检测软件的性能,这方面的性能测试主要包括并发性能测试、疲劳强度测试和速度测试等,其中并发性能测试是重点;
3.但是现有的技术中对于软件的并发性能测试容易受到网络环境的影响,且在对软件进行性能测试时,往往因为选定的测试文件数据大小不合理导致网络拨动情况在测试环境中无法真实显现导致的最终测试结果不准确;
4.为了解决上述问题,本发明提出了一种解决方案。


技术实现要素:

5.本发明的目的在于提供一种软件测试系统,目的是为了解决现有的技术中对于软件的并发性能测试容易受到网络环境的影响,且在对软件进行性能测试时,往往因为选定的测试文件数据大小不合理导致网络拨动情况在测试环境中无法真实显现导致的最终测试结果不准确的问题;
6.本发明的目的可以通过以下技术方案实现:
7.一种软件测试系统,包括:
8.软件服务端,用于安装并运行所要测试的软件,所述软件服务端包括若干个服务模块,所述服务模块为该测试软件所有提供文件下载功能的服务模块,所述服务模块包括文档文件单元和媒体文件单元,所述文档文件单元用于访问用户下载文档文件,所述文档文件单元内存储有数据大小为z1、z2、z3和z4的文档文件;所述媒体文件单元用于访问用户下载媒体文件,所述媒体文件单元内存储有数据大小为z5、z6、z7、z8和z9的媒体文件;
9.所述模拟并发端包括并发请求模块和数据校验模块,所述并发请求模块用于模拟多客户端同时向软件服务端发送并发请求,所述并发请求为模拟向软件服务端下载文档文件和媒体文件;
10.所述并发请求模块用于基于测试人员输入的并发测试数据按照一定的测试步骤对软件进行测试并生成返回数据,具体的测试步骤如下:
11.s11:首先选定数据大小为z1的文档文件为所要下载的文件数据:
12.所述并发请求模块获取并发测试数据的开启线程数并将其标记为a,1《a≤a,在本实施例中,a1为该软件理想状态下的并发量总数;在本实施例中,
13.获取该软件所要测试模块的模块地址并获取该软件所要测试模块的模块地址总
数标记为b;
14.s12:若b》1,获取该软件所要测试模块的模块地址并将其标记为b1、b2、...、bb;
15.利用random函数设定生成b个随机数并将其标记为c1、c2、...、cb,所述b个随机数的总和为a;
16.s121:所述并发请求模块按照一定的创建规则创建并发测试的子线程,具体的创建规则如下:
17.s1211:所述并发请求模块依据模块地址b1和所要下载的文件数据名称创建c1个子线程;
18.s1212:按照s1211依据模块地址b2、...、bb和所要下载的文件数据名称创建c2、...、cb个子线程;
19.利用lock()函数对a个创建的子线程进行加锁限定,避免了a个子线程异步向该软件发出并发请求情况的发生;
20.s13:反之,所述并发请求模块依据获取到的该软件所要测试模块的模块地址和所要下载的文件数据名称创建a个子线程;
21.s14:所述并发请求模块对a个子线程进行同步开启指令对所要测试模块的模块地址发动请求获取所要下载的文件数据并依据下载的文件数据和开启线程数生成并发返回数据;在本实施例中,所述一个子线程对应一条并发返回数据;
22.s15:按照s11到s14,依次选定数据大小为z1、z2、z3和z4的文档文件、数据大小为z5、z6、z7、z8和z9的媒体文件为所要下载的数据文件数据对软件进行测试生成并发返回数据;
23.所述并发测试数据包括该软件所要测试模块的模块地址、开启线程数,所要下载的文件数据名称;
24.所述校验模块用于对并发返回数据进行数据完整性进行校验;
25.所述并发性能判定模块用于对软件的并发性能进行判定,所述并发性能判定模块接收到数据分析模块传输的该测试软件的并发值后对按照一定的判定规则对其进行判定,具体的判定规则如下:
26.s21:获取测试软件的并发值r,将r与预设rmax进行大小比较,若r≥rmax,所述并发性能判定模块判定该测试软件的并发性能优秀并依据当前判定结果生成该测试软件的并发测试结果文档;
27.若rmin≤r<rmax,所述并发性能判定模块判定该测试软件的并发性能良好并依据当前判定结果生成该测试软件的并发测试结果文档;
28.若r<rmin,所述并发性能判定模块判定该测试软件的并发性能差并依据当前判定结果生成该测试软件的并发测试结果文档;
29.所述并发性能判定模块将该测试软件的并发测试结果文档传输到显示模块;
30.所述显示模块,对测试软件的并发测试结果文档进行存储并供给测试人员进行查看;
31.所述数据分析模块,对并发返回数据进行分析生成该测试软件的并发值r。
32.进一步的,所述软件服务端内安装存储有所有该测试软件正常运行所需的硬件环境和软件环境;所述该测试软件正常运行所需的硬件环境和软件环境包括测试的软件正常
运行所需要的第三方库、和满足该测试软件并发需求的cpu、内存、显卡和硬盘。
33.进一步的,所述数据校验模块包括md5数据表,所述md5数据表中存储有当前该测试文件上存储的所有文档文件名称、以及该文档文件对应的md5值和媒体文件名称、以及该媒体文件对应的md5值;
34.所述数据校验模块接收到并发请求模块传输的并发返回数据后对其所下载的文件数据进行md5值校验生成一个下载文件的md5校验值并将其与md5数据表中存储的该下载文件对应的md5值进行比对,若一致,则对该并发返回数据进行永久存储,反之则将该并发返回数据进行删除。
35.进一步的,所述数据分析模块分析生成该测试软件的并发值r的具体步骤如下:
36.s31:首先选定该测试软件所有提供文件下载功能的服务模块中的一个服务模块为待分析模块,测试待分析模块基于数据大小为z1的文档文件的并发返回数据为待分析数据;
37.s32:进行标准线程数划分,划分为g个标准线程数,并依次将g个标准线程数划分为g1、g2、...、gg;
38.s32:以开启线程数a=g1为例,获取g1个线程数的平均响应时间并将其标记为d1、d2、...、dg1;
39.s33:利用公式计算获取g1个线程数的平均响应时间离散值,将e1与e进行大小比较,若e1≥e,则按照|di-d|从大到小的顺序依次删除对应的di值并计算剩余di的离散值e1,并再次将e1与e进行大小比较,直至e1《e;所述e为预设阈值,所述d为g1个标准线程数的平均响应时间均值;
40.将参与离散值计算的g1个标准线程数的平均响应时间均值并将其重新标定为响应时间值f1;
41.s34:获取待分析数据g1个标准线程数经过校验后的并发返回数据条数h1;
42.s35:利用公式计算获取待分析模块的并发评定值,所述并发评定值为待分析模块的并发能力评定值;
43.s36:按照s32到s35,依次获取开启线程数a=g1、g2、...、gg下的待分析模块的并发评定值标记为i1、i2、...、ig;
44.s37:按照一定的筛选步骤对i1、i2、...、ig进行筛选获取所有的正常并发评定值和异常并发评定值;
45.s38:按照一定得到筛选规则计算获取待分析模块基于待分析数据的并发能力值k1;
46.s39:按照s31到s38:依次选定数据大小为z1、z2、z3和z4的文档文件、数据大小为z5、z6、z7、z8和z9的媒体文件作为待分析数据,计算获取待分析模块的并发能力值k1、k2、...、kk,1≤k≤9;并计算获取待分析模块并发能力值k1、k2、...、kk的均值并将其重新标定为并发能值q1;
47.s310:按照s31到s39,依次选定该测试软件所有提供文件下载功能的服务模块为待分析模块,计算获取该测试软件所属提供文件下载功能的服务模块的并发能值q1、
q2、...、qq,q≥1;
48.获取该测试软件所属提供文件下载功能的服务模块的并发能值q1、q2、...、qq的总和并将其重新标定为该软件的并发值r。
49.进一步的,所述s37,获取所有的正常并发评定值和异常并发评定值的具体筛选步骤如下:
50.s371:以i1为例,将i1与预设阈值i进行大小比较,若i1≥i,判定i1为正常并发评定值l1,反之判定i1为异常并发评定值;
51.s372:按照s371,依次将i2、...、ig与i进行大小比较,获取所有的正常并发评定值和异常并发评定值。
52.进一步的,所述s38,待分析模块基于待分析数据的并发能力值k1的具体筛选规则如下:
53.s381:获取所有的正常并发评定值并计算获取其均值l;获取所有的异常并发评定值将其标记为j1、j2、...、jj,1≤j≤g;
54.s382:依次计算所有的异常并发评定值j1、j2、...、jj与l的差值并将所有的异常并发评定值j1、j2、...、jj与l的差值重新标定为并发浮动差值o1、o2、...、oj;
55.s383:利用公式计算获取并发浮动差值的离散值p,将p与p1进行大小比较,若p≥p1,则按照|om-o|从大到小的顺序依次删除对应的om值并计算剩余om的离散值p,并再次将p与p1进行大小比较,直至p《p1;所述p1为预设阈值,所述o为剩余参与并发浮动差值的均值;
56.s384:利用公式计算获取待分析模块基于待分析数据的并发能力值k1。
57.进一步的,优先的z1的取值为5m,z2的取值为50m,优先的z3的取值为100m,z4的取值为500m,优先的z5的取值为10m,z6的取值为100m,优先的z7的取值为500m,z8的取值为1g和z9的取值为2.5g。
58.本发明的有益效果:
59.(1)本发明通过模拟客户端对测试软件的所有可供下载的服务模块进行并发请求,并对并发返回数据进行md5值进行校验,避免了在对测试软件进行测试的过程中网络波动造成测试过程中部分不完整的数据对测试结果影响情况的发生;
60.(2)本发明通过数据分析模块对经过数据完整性校验的并发返回数据进行分析,基于不同数据大小的文档文件和媒体文件计算获取测试软件中所有可供下载的服务模块的并发评定值,对其进行正常并发评定值和异常并发评定值筛选,计算获取该测试软件的并发值并基于该测试软件的并发值对该测试软件的并发能力进行判定,一方面避免了单一的测试文件类型和单一的测试文件数据大小导致最终的判定结果不准确情况的发生;另一方面通过预存储不同大小的文档文件数据和媒体文件数据避免了由于测试的文件数据大小的不全面导致的无法模拟网络波动对测试结果情况的发生。
附图说明
61.下面结合附图对本发明作进一步的说明。
62.图1是本发明的系统框图。
具体实施方式
63.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
64.如图1所示,一种软件测试系统,包括软件服务端、模拟并发端、并发性能判定模块、显示模块和数据分析模块。
65.所述软件服务端用于安装并运行所要测试的软件,在本实施例中,所述软件服务端内安装存储有所有该测试软件正常运行所需的硬件环境和软件环境,在本实施例中,所述该测试软件正常运行所需的硬件环境和软件环境包括测试的软件正常运行所需要的第三方库、和满足该测试软件并发需求的cpu、内存、显卡和硬盘;
66.所述软件服务端包括若干个服务模块,在本实施例中,所述服务模块为该测试软件所有提供文件下载功能的服务模块,所述服务模块包括文档文件单元和媒体文件单元,所述文档文件单元用于访问用户下载文档文件,所述文档文件单元内存储有数据大小为z1、z2、z3和z4的文档文件,优先的z1的取值为5m,z2的取值为50m,优先的z3的取值为100m,z4的取值为500m;所述媒体文件单元用于访问用户下载媒体文件,在本实施例中,所述媒体文件单元内存储有数据大小为z5、z6、z7、z8和z9的媒体文件,优先的z5的取值为10m,z6的取值为100m,优先的z7的取值为500m,z8的取值为1g和z9的取值为2.5g;
67.所述模拟并发端包括并发请求模块和数据校验模块,所述并发请求模块用于模拟多客户端同时向软件服务端发送并发请求,在本实施例中,所述并发请求指的是模拟向软件服务端下载文档文件和媒体文件;
68.所述模拟并发端接收到测试人员输入的并发测试数据后将其传输到并发请求模块,所述并发请求模块包括文件存储表;所述文件存储表中存储有该测试软件上存储的所有文档文件名称、文档文件数据大小,媒体文件名称和媒体文件数据大小;
69.在本实施例中,所述并发测试数据包括该软件所要测试模块的模块地址、开启线程数和所要下载的文件数据名称;
70.所述并发请求模块接收到模拟并发端传输的并发测试数据后按照一定的测试步骤对软件进行测试生成并发返回数据,具体的测试步骤如下:
71.s11:首先选定数据大小为g1的文档文件为所要下载的文件数据:
72.所述并发请求模块获取并发测试数据的开启线程数并将其标记为a,1≤a≤a1,在本实施例中,a1为预设该软件理想状态下的并发量总数阈值;
73.获取该软件所要测试模块的模块地址并获取该软件所要测试模块的模块地址总数标记为b;
74.s12:若b》1,获取该软件所要测试模块的模块地址并将其标记为b1、b2、...、bb;
75.利用random函数设定生成b个随机数并将其标记为c1、c2、...、cb,所述b个随机数
的总和为a;
76.s121:所述并发请求模块按照一定的创建规则创建并发测试的子线程,具体的创建规则如下:
77.s1211:所述并发请求模块依据模块地址b1和所要下载的文件数据名称创建c1个子线程;
78.s1212:按照s1211依据模块地址b2、...、bb和所要下载的文件数据名称创建c2、...、cb个子线程;
79.利用lock()函数对a个创建的子线程进行加锁限定,避免了a个子线程异步向该软件发出并发请求情况的发生;
80.s13:反之,所述并发请求模块依据获取到的该软件所要测试模块的模块地址和所要下载的文件数据名称创建a个子线程;
81.s14:所述并发请求模块对a个子线程进行同步开启指令对所要测试模块的模块地址发动请求获取所要下载的文件数据并依据下载的文件数据和开启线程数生成并发返回数据;在本实施例中,所述一个子线程对应一条并发返回数据;
82.s15:按照s11到s14,依次选定数据大小为z1、z2、z3和z4的文档文件、数据大小为z5、z6、z7、z8和z9的媒体文件为所要下载的数据文件数据对软件进行测试生成并发返回数据;
83.所述并发请求模块将并发返回数据传输到数据校验模块,所述数据校验模块用于对并发返回数据进行数据完整性进行校验,所述数据校验模块包括md5数据表,所述md5数据表中存储有当前该测试文件上存储的所有文档文件名称、该文档文件大小以及该文档文件对应的md5值,媒体文件名称、该媒体文件大小以及该媒体文件对应的md5值;
84.所述数据校验模块接收到并发请求模块传输的并发返回数据后对其所下载的文件数据进行md5值校验生成下载文件的md5校验值并将其与md5数据表中存储的该下载文件对应的md5值进行比对,若一致,则对该并发返回数据进行永久存储,反之则将该并发返回数据进行删除;
85.所述并发性能判定模块用于对软件的并发性能进行判定,所述并发性能判定模块接收到数据分析模块传输的该测试软件的并发值后对按照一定的判定规则对其进行判定,具体的判定规则如下:
86.s21:获取测试软件的并发值r,将r与预设rmax进行大小比较:
87.若r≥rmax,所述并发性能判定模块判定该测试软件的并发性能优秀并依据当前判定结果生成该测试软件的并发测试结果文档;
88.若rmin≤r<rmax,所述并发性能判定模块判定该测试软件的并发性能良好并依据当前判定结果生成该测试软件的并发测试结果文档;
89.若r<rmin,所述并发性能判定模块判定该测试软件的并发性能差并依据当前判定结果生成该测试软件的并发测试结果文档;
90.所述并发性能判定模块将该测试软件的并发测试结果文档传输到显示模块,所述显示模块用于测试人员查看测试软件的并发测试结果,所述显示模块接收到该测试软件的并发测试结果文档后将其进行存储便于测试人员查看;
91.所述数据分析模块用于对并发返回数据和该并发返回数据的校验文档数据进行
分析,具体的分析步骤如下:
92.s31:首先选定该测试软件所有提供文件下载功能的服务模块中的一个服务模块为待分析模块,测试待分析模块基于数据大小为z1的文档文件的并发返回数据为待分析数据;
93.s32:进行标准线程数划分,划分为g个标准线程数,并依次将g个标准线程数划分为g1、g2、...、gg;
94.s32:以开启线程数a=g1为例,获取g1个线程数的平均响应时间并将其标记为d1、d2、...、dg1;
95.s33:利用公式计算获取g1个线程数的平均响应时间离散值,将e1与e进行大小比较,若e1≥e,则按照|di-d|从大到小的顺序依次删除对应的di值并计算剩余di的离散值e1,并再次将e1与e进行大小比较,直至e1《e;所述e为预设阈值,所述d为g1个标准线程数的平均响应时间均值;
96.将参与离散值计算的g1个标准线程数的平均响应时间均值并将其重新标定为响应时间值f1;
97.s34:获取待分析数据g1个标准线程数经过校验后的并发返回数据条数h1;
98.s35:利用公式计算获取待分析模块的并发评定值,所述并发评定值为待分析模块的并发能力评定值;
99.s36:按照s32到s35,依次获取开启线程数a=g1、g2、...、gg下的待分析模块的并发评定值标记为i1、i2、...、ig;
100.s37:按照一定的筛选步骤对i1、i2、...、ig进行筛选获取所有的正常并发评定值和异常并发评定值,具体的筛选步骤如下:
101.s371:以i1为例,将i1与预设阈值i进行大小比较,若i1≥i,判定i1为正常并发评定值l1,反之判定i1为异常并发评定值;
102.s372:按照s371,依次将i2、...、ig与i进行大小比较,获取所有的正常并发评定值和异常并发评定值;
103.s38:按照一定得到筛选规则计算获取待分析模块基于待分析数据的并发能力值k1,具体得筛选规则如下:
104.s381:获取所有的正常并发评定值并计算获取其均值l;获取所有的异常并发评定值将其标记为j1、j2、...、jj,1≤j≤g;
105.s382:依次计算所有的异常并发评定值j1、j2、...、jj与l的差值并将所有的异常并发评定值j1、j2、...、jj与l的差值重新标定为并发浮动差值o1、o2、...、oj;
106.s383:利用公式计算获取并发浮动差值的离散值p,将p与p1进行大小比较,若p≥p1,则按照|om-o|从大到小的顺序依次删除对应的om值并计算剩余om的离散值p,并再次将p与p1进行大小比较,直至p《p1;所述p1为预设阈值,所述o为剩余参与并发浮动差值的均值;
107.s384:利用公式计算获取待分析模块基于待分析数据的并发能力值k1;
108.s39:按照s31到s38:依次选定数据大小为z1、z2、z3和z4的文档文件、数据大小为z5、z6、z7、z8和z9的媒体文件作为待分析数据,计算获取待分析模块的并发能力值k1、k2、...、kk,1≤k≤9;并计算获取待分析模块并发能力值k1、k2、...、kk的均值并将其重新标定为并发能值q1;
109.s310:按照s31到s39,依次选定该测试软件所有提供文件下载功能的服务模块为待分析模块,计算获取该测试软件所属提供文件下载功能的服务模块的并发能值q1、q2、...、qq,q≥1;
110.获取该测试软件所属提供文件下载功能的服务模块的并发能值q1、q2、...、qq的总和并将其重新标定为该软件的并发值r;
111.所述数据分析模块将该软件的并发值r传输到并发性能判定模块;
112.在说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
113.以上内容仅仅是对本发明所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。
114.以上对本发明的一个实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍归属于本发明的专利涵盖范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献