软件测试及数据处理方法及装置制造方法及图纸

技术编号:21891479 阅读:20 留言:0更新日期:2019-08-17 14:21
本申请公开了一种软件测试方法,包括:获得测试用例标识;根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识;向被测软件系统发送包含所述运行时标识的调用请求;所述被测软件系统包含用于实现所述测试用例预期功能的、并需要测试的待测函数。采用上述方法,能够用以采集测试用例和测试用例运行时对应的目标函数之间的关系数据,构建更准确的测试用例和函数关系。

Software Testing and Data Processing Method and Device

【技术实现步骤摘要】
软件测试及数据处理方法及装置
本申请涉及软件测试
,具体涉及软件测试方法及装置。本申请同时涉及一种数据处理方法及装置。
技术介绍
软件系统的复杂化和大型化使得软件测试的难度不断增加,一方面,软件系统的复杂化,导致难以评估每次代码改动的影响面;另一方面,大型软件往往切分成多个子系统,增加了测试成本。当分配给测试环境使用的服务资源较少时,例如分配给测试环境使用的服务器、数据库、中间件等较少容易出现偶发性的功能、性能等问题,使得多个子系统联调测试的成功率较低,因此增加了联调成本。为保证复杂大型软件系统的质量并降低测试难度,精准化测试成为重要的软件测试手段。所谓精准化测试,为基于源代码变更进行回归测试的测试方式,精准化测试中需要根据被测软件系统的源代码的函数变更确定测试用例,能够避免全量回归源代码变更前的测试用例,同时能避免人为评估源代码变更的影响面及按照经验人为圈定测试用例。精准化测试以测试用例和被测软件系统代码间的关系为基础,目前,为了采集测试用例在不同代码版本的被测软件系统中运行的准确覆盖数据,以建立可靠的测试用例和被测软件系统函数关系,常用方法包括:1,使用独立的测试环境,不能跟自动化、公用联调测试环境等共用;2,每次测试只采集一个测试用例的覆盖数据,相应带来测试资源浪费以及人力投入成本高的问题。因此,需要解决的问题是,如何采集测试用例运行时的覆盖数据,以及构建测试用例和系统代码关系,以提高精准化测试的可靠度。
技术实现思路
本申请提供软件测试方法、数据处理方法,用以采集测试用例和测试用例运行时对应的目标函数之间的关系数据,构建更准确的测试用例和函数关系。本申请提供一种软件测试方法,包括:获得测试用例标识;根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识;向被测软件系统发送包含所述运行时标识的调用请求;所述被测软件系统包含用于实现所述测试用例预期功能的、并需要测试的待测函数。可选的,所述获得测试用例标识,包括:获得待测函数标识;根据所述待测函数标识获取所述测试用例标识。可选的,所述根据所述待测函数标识获取所述测试用例标识,包括:以所述待测函数标识为索引,从用例与函数对应关系库中查询获得所述测试用例标识;和/或,获得用例推荐实体提供的所述测试用例标识。可选的,所述根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识,包括:获得针对所述测试用例标识的运行触发;根据所述运行触发运行测试用例,生成用于标识所述测试用例本次运行的运行时标识。可选的,所述方法还包括:接收所述被测软件系统返回的针对所述调用请求的调用结果。可选的,所述方法还包括:判断所述调用结果是否与所述测试用例的预期功能匹配,如果是,则确定所述测试用例在被测软件系统中测试通过。可选的,所述获得所述待测函数标识,包括:获得变更函数的标识和/或新增函数的标识,作为待测函数标识。本申请还一种软件测试方法,包括:获得包含运行时标识的调用请求;其中,所述运行时标识用于标识针对被测软件系统进行测试的测试用例本次运行;从所述调用请求中获取所述运行时标识;运行所述调用请求对应的目标函数;其中,所述目标函数包含至少一个待测函数;记录包含所述运行时标识和所述目标函数的对应关系的日志。可选的,所述方法还包括:在运行所述目标函数的过程中,将所述运行时标识保存在线程上下文中;如果所述目标函数需要调用下一级特定函数,则通过所述线程上下文向所述下一级特定函数传递所述运行时标识;所述记录包含所述运行时标识和所述目标函数的对应关系的日志,包括:从所述线程上下文中获取所述运行时标识,得到所述运行时标识和所述目标函数的对应关系,记录所述对应关系。可选的,所述运行所述调用请求对应的目标函数,包括:根据所述调用请求执行所述接口层函数;通过接口层函数调用所述目标函数和/或所述目标函数的下一级特定函数;所述接口层函数为所述被测软件系统提供的接口层函数;所述记录包含所述运行时标识和所述目标函数的对应关系的日志,包括:获得调用所述接口层函数并获得调用结果的函数调用链路;记录所述运行时标识与所述函数调用链路包含的函数的对应关系。可选的,所述方法还包括:如果所述调用请求中未包括所述运行时标识,则为所述测试用例本次运行生成运行时标识。可选的,所述被测软件系统包含测试插件;所述记录包含所述运行时标识和所述目标函数的对应关系的日志,包括:所述测试插件获得所述运行时标识,记录包含所述运行时标识和所述目标函数的对应关系的日志。可选的,所述方法还包括:输出所述包含所述运行时标识和所述目标函数的对应关系的日志。本申请还提供一种数据处理方法,包括:获得运行时标识和函数之间的第一对应关系;所述运行时标识用于标识针对被测软件系统进行测试的测试用例的运行;获得测试用例和运行时标识之间的第二对应关系;根据所述第一对应关系和所述第二对应关系,建立所述测试用例和所述函数之间的第三对应关系。可选的,所述获得运行时标识和函数之间的第一对应关系,包括:获得包含运行时标识和函数的对应关系的日志;从所述日志中获取运行时标识、被测软件系统标识以及函数标识,建立运行时标识、被测软件系统标识以及函数标识之间的对应关系;将所述运行时标识、被测软件系统标识以及函数标识之间的对应关系确定为所述第一对应关系。可选的,所述获得测试用例和运行时标识之间的第二对应关系,包括:获得包含测试用例和运行时标识的记录文件;从所述记录文件中获取测试用例标识以及运行时标识,建立测试用例标识和运行时标识之间的对应关系;将所述用例标识和运行时标识之间的对应关系确定为第二对应关系。可选的,所述根据所述第一对应关系和所述第二对应关系,建立所述测试用例和所述函数之间的第三对应关系,包括:针对所述测试用例,使用所述运行时标识作为索引,在所述第一对应关系中检索与所述测试用例对应的被测软件系统标识以及函数标识;建立所述测试用例和所述被测软件系统标识对应的被测软件系统中包含的函数之间的第三对应关系。可选的,所述方法还包括:获得包含待测函数信息的用例推荐请求;根据所述待测函数信息和所述第三对应关系,获得推荐的测试用例。可选的,所述方法还包括:输出所述推荐的测试用例。本申请还提供一种软件测试方法,包括:获得包含待测函数信息的用例推荐请求;根据所述用例推荐请求中的待测函数信息,在用例与函数对应关系库中查询推荐的测试用例;输出所述推荐的测试用例。本申请还提供一种软件测试装置,包括:用例标识获得单元,用于获得测试用例标识;运行时标识生成单元,用于根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识;调用请求发送单元,用于向被测软件系统发送包含所述运行时标识的调用请求;所述被测软件系统包含用于实现所述测试用例预期功能的、并需要测试的待测函数。本申请还提供一种软件测试装置,包括:调用请求获得单元,用于获得包含运行时标识的调用请求;其中,所述运行时标识用于标识针对被测软件系统进行测试的测试用例本次运行;运行时标识获取单元,用于从所述调用请求中获取所述运行时标识;函数调用单元,用于运行所述调用请求对应的目标函数;其中,所述目标函数包含至少一个待测函数;日志记录单元,用于记录包含所述运行时标识和所述目标函数的对本文档来自技高网...

【技术保护点】
1.一种软件测试方法,其特征在于,包括:获得测试用例标识;根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识;向被测软件系统发送包含所述运行时标识的调用请求;所述被测软件系统包含用于实现所述测试用例预期功能的、并需要测试的待测函数。

【技术特征摘要】
1.一种软件测试方法,其特征在于,包括:获得测试用例标识;根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识;向被测软件系统发送包含所述运行时标识的调用请求;所述被测软件系统包含用于实现所述测试用例预期功能的、并需要测试的待测函数。2.根据权利要求1所述的方法,其特征在于,所述获得测试用例标识,包括:获得待测函数标识;根据所述待测函数标识获取所述测试用例标识。3.根据权利要求2所述的方法,其特征在于,所述根据所述待测函数标识获取所述测试用例标识,包括:以所述待测函数标识为索引,从用例与函数对应关系库中查询获得所述测试用例标识;和/或,获得用例推荐实体提供的所述测试用例标识。4.根据权利要求1所述的方法,其特征在于,所述根据所述测试用例标识运行测试用例,生成用于标识所述测试用例本次运行的运行时标识,包括:获得针对所述测试用例标识的运行触发;根据所述运行触发运行测试用例,生成用于标识所述测试用例本次运行的运行时标识。5.根据权利要求1所述的方法,其特征在于,还包括:接收所述被测软件系统返回的针对所述调用请求的调用结果。6.根据权利要求5所述的方法,其特征在于,还...

【专利技术属性】
技术研发人员:何青松
申请(专利权)人:口碑上海信息技术有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1