【技术实现步骤摘要】
软件的测试方法、装置、设备及存储介质
[0001]本申请涉及计算机
,尤其涉及一种软件的测试方法、装置、设备及存储介质。
技术介绍
[0002]日常测试中存在并发操作情况下出现数据不一致的情况。特别是一些涉及金额的核心数据,一旦出现问题影响很大。为了保证并发操作的数据质量,除了开发规范通过分布式事务封锁、时间戳、乐观控制法等手段预防外,从测试角度出发还需要验证确保并发操作下的业务数据一致性。但是,相关技术中,在执行并发测试之前需要人工从业务角度梳理会导致业务数据不一致的并发情况和要验证的数据表字段,并基于梳理出的并发情况和要验证的数据表字段来人工设置压测脚本,并基于压测脚本对对应软件进行压力测试,然而,这种方式比较费时,影响软件的测试的效率,并且,测试过程中人工来设置压测脚本,容易出现因人为误操作从而导致压测脚本中存在错误的情况,使得软件的测试的准确度较低。
技术实现思路
[0003]本申请提供一种软件的测试方法、装置、设备及存储介质。
[0004]第一方面,本申请提供一种软件的测试方法,包括: ...
【技术保护点】
【技术特征摘要】
1.一种软件的测试方法,其特征在于,所述方法包括:从待测软件对应的数据库中确定出目标数据库表,其中,所述目标数据库表中的目标字段被所述待测软件对应的代码中的多个方法执行;根据所述方法和所述目标字段,以生成对所述待测软件进行数据一致性测试所需要的压测脚本,其中,所述压测脚本中包括所述目标字段的断言,所述压测脚本用于生成多个业务请求,并同时向所述待测软件发送所述多个业务请求,其中,不同所述业务请求所调用的方法是不同的,并且每个所述业务请求对应一个所述方法;线性提高所述待测软件的并发用户数直到达到最高承受的最大并发用户数,并在每个并发用户数下执行所述压测脚本,以得到在所述目标字段在被多个方法并发执行后所得到的实际结果;针对每个并发用户数,对所述断言中所述目标字段在所述并发用户数下的期望结果和所述实际结果进行比较,以得所述测试软件在所述并发用户数下的测试结果。2.根据权利要求1所述的方法,其特征在于,所述从待测软件对应的数据库中确定出目标数据库表,包括:从所述待测软件对应的数据库中获取多个候选数据库表,其中,所述候选数据库表被所述待测软件对应的代码中的多个方法执行;针对每个候选数据库表中的任意一个字段,判断所述字段是否可被各个所述方法执行;若判断获知所述字段可被各个所述方法执行,则将所述候选数据库表作为所述目标数据库表,并将所述字段作为所述目标字段。3.根据权利要求2所述的方法,其特征在于,所述判断所述字段是否可被各个所述方法执行,包括:确定各个所述方法在所述候选数据库表中各自可执行的候选字段集合;判断各个所述候选字段集合中是否均存在所述字段;其中,如果各个所述候选字段集合中均存在所述字段,则确定所述字段可被各个所述方法执行。4.根据权利要求3所述的方法,其特征在于,所述确定各个所述方法在所述候选数据库表中各自可执行的候选字段集合,包括:针对各个所述方法,获取所述方法中的多个输入参数;从所述候选数据库表中获取与所述多个输入参数各自对应的候选字段;根据所获取到的候选字段,确定所述方法在所述候选数据库表中可执行的候选字段集合。5.根据权利要求1所述的方法,其特征在于,根据所述方法和所述目标字段,以生成对所述待测软件进行数据一致性测试所需要的压测脚本,包括:获取对所述待测软件进行数据一致性测试所需要的预设压测脚本模板;获取所述多个方法各自对应的接口报文;根据所述目标字段的当前字段值和所述多个方法,确定所述目标字段的断言,其中,所述目标字段的断言中包括所述目标字段的期望结果;将所述接口报文、预设令牌和所述目标字段的断言写入所述预设压测脚本模板中,以
生成所述压测脚本,其中,所述压测脚本根据所述接口报文以及所述预设令牌生成所述多个业务请求。6.根据权利要求1
‑
5中任一项所述的方法,其特征在于,还包括:针对每个方法,从所述方法中的多个输入参数中获取与所述目标字段对应的目标输入参数;将所述目标输入参数对应的预设参数值写入到所述压测脚本,以使得所述压测脚本中与所述方法对应的业务请求在调用所述方法时,根据所述预设参数值调整所述目标字段的字段值。7.一种软件的测试装置,其特征在于,所述装置包括:确定模块,用于从待测软件对应的数据库中确定出目标数据库表,其中,所述目标数据库表中的目标字段被所述待测软件对应的代码中的多个方法执行;生成模块,用于根据所述方法和所述目标字段,以生成对所述待测软件进行数据一致性测试所需要的压测脚本,其中,所...
【专利技术属性】
技术研发人员:吴玲玲,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。