一种数据回传后的数据核对自动化测试方法及工具技术

技术编号:32210112 阅读:34 留言:0更新日期:2022-02-09 17:15
本发明专利技术公开了一种数据回传后的数据核对自动化测试方法及工具。针对本公司系统内的数据回传到客户系统,对数据准确性的测试,并实现了自动化测试工具,该方法及工具可以较为高效地完成大数据范围内的核对测试。具体包括以下步骤:(1)首先,完成数据回传动作;(2)根据项目的个性化,在工具内进行参数配置;(3)执行自动化测试脚本,可通过SQL句筛选部分或全部回传数据进行测试核对;(4)查看执行结果或日志,对比测试结果与期望结果的一致性。本方法及工具只需修改配置文件,和保留多个项目的配置文件,即可进行自动化回归测试和自动化测试用例的管理。本数据测试方法及工具可极大提升测试工作效率。工作效率。工作效率。

【技术实现步骤摘要】
一种数据回传后的数据核对自动化测试方法及工具


[0001]本专利技术属于信息
,具体涉及一种数据回传后的数据核对自动化测试方法及工具。

技术介绍

[0002]本世纪以来,我国的科技不断发展进步,互联网的出现产生了大量的数据信息,人类已进入“大数据”时代。在这样一个时代背景下,依靠大数据展开的数据挖掘、机器学习等算法应用于各行各业,那么如何进行数据软件产品的测试,保证数据的准确性就显得尤为重要。
[0003]在传统软件测试体系中,对功能、性能、稳定性等测试方法描述比较完善,但很少有涉及大数据的测试方法。因此,本专利技术针对大数据测试方法,梳理出一类数据回传核对数据准确性,并提供自动化测试工具,为大数据测试体系的完善提供有力支撑,同时在提高数据测试效率方面迈出坚实的一步。

技术实现思路

[0004]本专利技术的目的在于针对现有软件测试体系对大数据测试方法的不足,提出并开发一种数据回传后的数据核对自动化测试方法及工具。
[0005]本专利技术解决其技术问题所采用的技术方案如下:
[0006]本专利技术可支本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据回传后的数据核对自动化测试方法,可支持的测试场景包含场景1:通过请求客户提供的接口将A系统的数据回传到B系统,不同的项目请求接口的报文存在个性化;场景2:通过直接访问B系统的后台数据库,将回传数据直接落到B系统的中间表中,不同的项目中间表的数据字典存在个性化;其特征在于具体测试实现如下:步骤1:完成数据回传动作:首先,在A系统里选中并提交需要回传的数据;然后,在Airflow调度平台执行数据回传任务,将数据推送到B系统;步骤2:根据项目的个性化,对参数进行配置;步骤3:读取步骤2关于A系统配置文件中的模块信息;读取A系统PG库的连接信息[db_conf]下的参数,用来获得A系统PG库的连接信息,创建数据库连接;读取项目信息[project_msg]、项目上个性化的查询SQL[sql]下的参数,用来构建查询SQL;执行SQL句获得A系统在步骤1中推送到系统B的数据;步骤4:读取步骤2关于B系统配置文件中的模块信息:读取B系统数据库的连接信息[log_db_conf]下的参数,从而获得B系统数据库的连接信息,创建数据库连接;读取B系统项目上个性化的查询SQL[sql]下的参数,从而构建查询SQL;执行SQL句获得在步骤1中B系统接收到的数据;步骤5:核对步骤3和步骤4获得的数据;由于存在步骤3和步骤4获得的数据的内容一致,当核对的结果为false的情况,导致该结果的原因包括:1、每条记录中字段的排序不一致;2、在多条记录时,数据的排序不一致;3、数据的类型不一样,所以在数据核对前对数据的类型进行转换,数据的类型进行转换的依据:按照项目上需要核对的推数字段[field]下的参数要求进行取值排序;步骤6:根据项目租户号project_id,执行测试脚本,并在关键步骤打印日志;步骤7:测试人员可在对应的日志文件或控制台内查看测试结果。2.根据权利要求1所述的一种数据回传后的数据核对自动化测试方法,其特征在于步骤2所述的配置主要包含5个模块:A系统PG库的连接信息[db_conf]、项目信息[project_msg]、B系统数据库的连接信息[log_db_conf]、项目上需要核对的推数字段[field]、项目上个性化的查询SQL[sql]。3.根据权利要求2所述的一种数据回传后的数据核对自动化测试方法,其特征在于模块1:A系统PG库的连接信息[db_conf]:db_database:A系统PG库的数据库DataBase名称;db_user:A系统PG数据库的登录用户名;db_password:A系统PG数据库的登录密码;db_host:A系统PG数据库的IP地址;db_port:A系统PG数据库的IP地址对应的端口;模块2:项目信息[project_msg]project_id:客户对应项目在A系统中的租户号scene_code:客户对应项目在A系统中参与的业务场景编码brand_code:客户商品存在的品牌编码列表模块3:B系统数据库的连接信息[log_db_conf]
db_database:B系统数据库DataBase的名称db_user:B系统数据库的登录用户名db_password:B系统数据库的登录密码db_host:B系统数据库的IP地址db_port:B系统数据库的IP地址对应的端口db_type:B系统系统的数据库类型模块4:项目上需要核对的推数字段[field]test_field:B系统数据库中中间表里需要核对的字段comp_field:A系统中PG数据库里需要核对的字段模块5:项目上个性化的查询SQL[sql]target_table_name:B系统数据库里的中间表的表名,必须配置;schema:B系统数据库里的日志表所在的schema,不存在就不需要配置;test_where_pg:A系统PG库中查询数据的筛选条件,亦可测试单条或多条,和配置项test_where_cus对应;test_where_cus:B系统数据库中查询数据的筛选条件,亦可测试单条或多条,和配置项test_where_pg对应;test_with_pg:A系统PG库中查询数据的需要额外增加的临时表,项目个性化开发,不存在就不需要配置;test_select_pg:A系统PG库中查询数据的需要额外增加返回的字段,项目个性化开发,不存在就不需要配置;test_join_pg:A系统PG库中查询数据的需要额外关联的表,项目个性化开发,不存在就不需要配置。4.根据权利要求3所述的一种数据回传后的数据核对自动化测试方法,其特征在于步骤3具体实现如下:查询SQL语句模板为:WITH dt AS(/dt临时表;SELECT brand_code,max(day_date)as day_date/读取项目品牌信息对应的最新决策日期(brand_code,项目品牌信息);FROM tenant_{project_id}_rst.rst_ra_sku_org_detail/回传数据在A系统存放的表;WHERE scene_code in({scene_code})/筛选条件,规定的项目业务场景(scene_code,业务场景字段;{scene_code},配置参数配置的业务场景);AND commit_status=2/筛选条件,数据状态是已提交回传的;AND human_ra_qty>0/筛选条件,数据的提交补调单的个数是大于0的;GROUP BY brand_code/根据项目品牌信息进行分组;){test_with}/配置参数,创建SQL临时表;SELECT sku.order_id AS uuid,/获取项目的商品信息:补调单号;sku.brand_code,/获取项目的商品信息:项目品牌信息;
sku.day_date,/获取项目决策日期;to_char(sku.update_time,

yyyy

mm

dd hh24:mi:ss

)AS commit_time,/获取数据的更新时间;commit_user_name AS commit_user,/获取数据的更新用户;sku.scene_code AS type_code,/获取项目的业务场景;sku.sku_code,/获取项目的商品信息:款色码编码;sku.product_code,/获取项目的商品信息:款编码;sku.color_code,/获取项目的商品信息:颜色编码;sku.size_code,/获取项目的商品信息:尺码编码;dim_in_org.stockorg_code AS receive_org_code,/获取项目的组织信息:接收门店或仓库的编码;dim_out_org.stockorg_code AS send_org_code,/获取项目的组织信息:发出门店或仓库的编码;dim_in_org.stockorg_type AS recei...

【专利技术属性】
技术研发人员:陈灿王一君方佳慧王光华
申请(专利权)人:杭州览众数据科技有限公司
类型:发明
国别省市:

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

1