[发明专利]一种SparkSQL应用程序的自动化测试方法和装置有效

专利信息
申请号: 201811304692.3 申请日: 2018-11-04
公开(公告)号: CN109491904B 公开(公告)日: 2021-10-26
发明(设计)人: 王娜;廖艳云;林飞;古元;毛华阳;华仲锋 申请(专利权)人: 北京亚鸿世纪科技发展有限公司
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 暂无信息 代理人: 暂无信息
地址: 100095 北京市海淀区高里*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 sparksql 应用程序 自动化 测试 方法 装置
【权利要求书】:

1.一种SparkSQL应用程序的自动化测试装置,其特征在于由测试环境、Jmockit、sqlList记录器、数量对比器、语句对比器组成;测试环境由maven工程配置器、jar包导入器、HDFS环境变量设置器、大数据组件引入器组成;

实现一种SparkSQL应用程序的自动化测试装置的主要步骤包括:

1)部署测试环境

①由maven工程配置器读取被测应用程序,并判断被测应用程序所需的测试环境的配置类型;

②当被测应用程序存在jar包时,通过jar包导入器完成测试环境配置,jar包导入器通过pom.xml的依赖包引入;

③当被测应用程序运行于HDFS分布式文件系统时,通过HDFS环境变量设置器完成测试环境配置,HDFS环境变量设置器自动从hadoop官网下载与被测应用程序版本一致的hadoop包,并根据本机的操作系统类型设置hadoop.home.dir属性;

④当被测应用程序运行于Spark和Hive的大数据环境时,通过大数据组件引入器完成测试环境配置,大数据组件引入器通过添加pom.xml依赖包来完成测试环境配置;

2)对SparkSession.sql(String sqlText)模拟

①使用单元测试当中的Mock工具Jmockit,对SparkSQL API中执行sql语句的方法SparkSession.sql(String sqlText)进行模拟,使SparkSQL在被测应用程序内部调用SparkSession.sql(String sqlText)执行sql的同时,返回执行的具体sql语句;

②使用sqlList记录器接收并保存被测应用程序执行的sql语句,sqlList记录器使用sqlList变量接收被测应用程序执行的sql语句;

3)sql语句录制

sql语句录制是指获取被测应用程序的SaprkSQL应用程序运行过程中顺序执行的sql,生成预期sql;

①变量模拟

对sqlList记录器中的sql语句相关的变量,采用Jmockit工具进行模拟,使变量的取值固定,保证在不同时间和不同应用场景下,被测应用程序的SparkSQL应用程序执行是同样的sql语句;

②运行被测应用程序,在SparkSession.sql(String sqlText)模拟和变量模拟的前提下,获取程序运行中顺序执行的sql语句,将顺序执行的sql语句保存到文件生成预期sql;

4)sql语句回放

①获取执行sql

运行被测应用程序,在SparkSession.sql(String sqlText)模拟和变量模拟的前提下,获取程序运行中顺序执行的sql语句,将顺序执行的sql语句保存到文件生成执行sql;

②sql数量对比

数量对比器读取预期sql和执行sql,对比预期sql的数量和执行sql的数量,当预期sql的数量和执行sql的数量不一致,测试结果为不通过,结束sql对比;当预期sql的数量和执行sql的数量一致,进行sql语句对比;

③sql语句对比

语句对比器读取预期sql和执行sql,去除语句中的标点符号、空格、回车、换行及非语义的内容,将预期sql和执行sql转换成预期sql字符串和执行sql字符串,对比预期sql字符串和执行sql字符串,当预期sql字符串和执行sql字符串不同时,测试结果为不通过;当预期sql字符串和执行sql字符串相同时,测试结果为通过。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京亚鸿世纪科技发展有限公司,未经北京亚鸿世纪科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201811304692.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top