大数据项目如何更好的管理测试用例,其重要性不言而喻;其中最有效的一个方法就是强而有力的执行用例的编写规范;以下是经验总结的用例编写规范。
用例编写规范分为两部分;
第一部分:功能测试用例编写规范
(一)测试用例编写规范:
1、需求(算法)文档路径;
2、ER-Win、数据字典;
测试目的:
前置条件:
操作步骤:
1、
2、
预期结果:
(二)SQL用例编写规范:
1)每个表必须要使用有意义的别名;
2)当使用表连接时,要关联的从表字段必须要放在左边,主表字段放在右边;
--要求,比例:
正确的示范:
select cv.version_oid, ce.carid from gf_mix_city_excle ce
left join tb_gfda_car_version cv on cv.version_oid = ce.carid
错误的示范,主、从表的别名无意义,关联表的字段放在右边:
select a.version_oid, dd.carid from gf_mix_city_excle dd
left join tb_gfda_car_version a on dd.carid = a.version_oid
2)当语句需要有多个查询语句结合查询时,必须使用With结构;
3)每个表构造(as)后面必须带有注释,如:t1 得出所有城市下面所有型号的上牌量;
select *
from (select ds.level1_name || ‘-‘ || ds.level2_name as two_segment,
ds.level2_name || ‘-‘ || ds.level3_name as three_segment
from dm_segment ds
where ds.level_flag = 4
order by ds.level1_name,
ds.level2_name,
ds.level3_name,
ds.level4_name) t1
where t1.two_segment = ‘Car-C‘ ;
要修改为以下格式:
with t1 as ( -- t1 得出 将第一、二层细分市场名称合并,作为第二层名称;将第二、三层细分市场名称合并,作为第三层名称;
select ds.level1_name || ‘-‘ || ds.level2_name as two_segment,
ds.level2_name || ‘-‘ || ds.level3_name as three_segment
from dm_segment ds
where ds.level_flag = 4
order by ds.level1_name,
ds.level2_name,
ds.level3_name,
ds.level4_name
)
select * from t1 where t1.two_segment = ‘Car-C‘ ;
第二部分:数据校验用例编写规范
1、数据校验需求:
--要求,背景:数据起源于哪,用在哪里,为什么要清洗,要做什么处理,要达到什么样的要求/标准
2、数据原文件获取路径(方法);
3、数据清洗流程;
--要求,着重描述数据流的过程,如经过了几层:原文件 -> DW -> DM
4、内部数据业务流程;
--要求,例如:原文件由客户提供给PM -> 发送由事业部先审核数据的完整性 -> 审核通过后由BI组将原文件数据直接入库到DW -> 经过清洗后,根据业务逻辑计算到DM层)
5、数据认知相关信息:
1)数据库配置信息;
2)数据库访问账号密码;
3)数据模型(ER-Win)、数据字典;
4)数据清洗过程涉及表;
6、数据更新周期;
--要求,着重描述数据变化的规律,例如:成交更新频率:每周;一般为每周一拿到上周最新成交价数据,
7、校验时间限制;
--要求,例如:一般情况下,每周一早上入库完成,下午下班前要校对完成;
SQL校验用例执行部分:
1、测试目的:
2、前置条件:
3、校验方法;
--例如:Excel + SQL
4、操作步骤;
5、预期结果: