大数据测试/ETL开发,如何造测试数据

相信很多的小伙伴,有些是大数据测试岗位,有些是ETL开发,都面临着如何要造数据的情况。

1,造数背景

【大数据测试岗位】,比较出名的就是宁波银行,如果你在宁波银行做大数据开发,对着需求开发完代码之后,可能需要把代码提交给测试人员,那么测试人员会根据这个业务需求,他们会自己造一批数据,然后看看你的sql脚本,是不是有一些明显的sql错误,以及开发规范的问题。当然,还有最重要的一点是,他们会拿着你的脚本取跑数,看看的出来的数据是不是符合业务的逻辑与需求。

如果是【ETL开发岗位】,那么在你连通了HIVE和其他的数据库(比如说,Oracle,mysql,kingbases等等),接着你把代码也开发好了,那么怎么判断你的数据是不是ETL到目标数据库里面了呢?当然是自己先在源数据库里造一批数据,然后走调度跑脚本,如果不报错的情况下,我们再到目标数据库里查看一下,我们之前造的数据是不是ETL过去了。

如果是【大数据开发岗位】,那基本不咋造数据,因为在测试环境,就是有测试数据,还有生产上来的脱敏数据。这些都是可以拿来借鉴参考开发的。

2,造数阶段

那么如何造数呢??直接上 HUE 摸鱼儿展示一下

一张图拿捏:

3,造数代码

--如果是分区表(直接建立分区,同时往该分区插入数据)insert into  table xxxx partiton ( dt = '2024-05-27' )(字段1,字段2,字段3......)values (值1,值2,值3.......)  , (值4,值5,值6.......)--如果不是分区表insert into  table xxxx (字段1,字段2,字段3......)values (值1,值2,值3.......), (值4,值5,值6.......)

4,造数逻辑

当然,造数代码不难,但是数据可不是瞎造的,其中还是有一定的讲究。

1,首先,你得先了解整个需求文档,它的数据的最细粒度是什么??

比如说一个客户对应多个资金账号,那么你就按照最细粒度来造数。

可以造3条数据,一个客户对应3个不同的资金账号。

2,其次,根据需求文档的某些特殊字段进行穷举

比如说,客户类型字段,总共分为3个,个人客户,机构客户,产品客户。

这个时候,你可以发散出3条数据,穷举出来。

3,也可以根据数据的低概率可能性造数

比如,非主键字段,可以故意设置一些null值。

比如,要算一个完成率,你可以设置分母为0的情况。

比如,一般一个员工,只能归属于一个营业部,但是你清楚这个业务,你可以把某个客户,分别放在2个不同的营业部下面。

4,最后,我想说,测试人员得要对业务需求文档要有一定的理解。

清楚哪些是开发重点,哪些是争议点,在重点之处下文章,才能取得好的效果。

只有这样子,跑出来的数据才是全面的。你无需造数太多,但一定要麻雀虽小五脏俱全。才能叫校验出开发代码人员的代码有没有漏洞,能不能良好的实现业务需求。

==========================================================

好了,这个知识点就分享到这里。

之后看看给大家分享一下测试数据的岗位的小伙伴是怎么测试你的脚本的,有空也会分享一下ETL开发的流程。

欢迎大家点赞收藏关注,不一定很难,但都是经验之谈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/20815.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数学建模 —— 层次分析法(2)

目录 一、层次分析法(AHP) 二、构造比较判断矩阵 2.1 两两比较法 三、单准则下的排序及一致检验 3.1 单准则下的排序 3.2 一致性检验 四、层次总排序 4.1 层次总排序的步骤 4.2 总排序一致性检验 一、层次分析法(AHP) 方…

xdp、dpdk、rdma能在同一网卡上同时使用吗?

文心一言 XDP、DPDK和RDMA是三种不同的技术,它们各自在Linux网络性能优化中扮演了不同的角色。关于它们能否在同一网卡上同时使用,我们需要考虑以下几个方面: XDP(eXpress Data Path): XDP是Linux内核提供…

SVM算法-非线性分类背后技术详解

引言 支持向量机(SVM)是一种强大的监督学习算法,广泛应用于分类和回归任务中。本文将详细介绍SVM算法在非线性分类任务中的应用,并通过代码示例来展示其背后的技术精髓。我们将分三大部分来展开,本部分将重点介绍SVM算…

【C++面试50题】

以下是针对C程序员面试可能遇到的一些问题,涵盖了从基础语法、面向对象、STL、内存管理、模板、异常处理、并发编程等多个方面。 ### 基础概念与语法 1. C与C的主要区别是什么? 2. 什么是构造函数和析构函数?它们何时被调用? 3. 什…

17、Spring系列-SpringMVC-请求源码流程

前言 Spring官网的MVC模块介绍: Spring Web MVC是基于Servlet API构建的原始Web框架,从一开始就已包含在Spring框架中。正式名称“ Spring Web MVC”来自其源模块的名称(spring-webmvc),但它通常被称为“ Spring MVC…

[AI Google] 三种新方法利用 Gemini 提高 Google Workspace 的生产力

Workspace 侧边栏中的 Gemini 现在将使用 Gemini 1.5 Pro,新的 Gemini for Workspace 功能即将登陆 Gmail 移动应用,等等。 Gemini for Google Workspace 帮助个人和企业更好地利用 Google 应用——从在 Gmail 中撰写邮件到在 Sheets 中组织项目计划。过…

glpi 安装与使用

1、环境介绍 操作系统:龙蜥os 8.9 nginx:1.26.1 php:8.2.19 mysql:MarinaDB 10.3.9 glpi:10.0.6 fusioninventory:fusioninventory-10.0.61.1 2、安装epel源 dnf install epel-release -y dnf install htt…

Python | Leetcode Python题解之第125题验证回文串

题目&#xff1a; 题解&#xff1a; class Solution:def isPalindrome(self, s: str) -> bool:n len(s)left, right 0, n - 1while left < right:while left < right and not s[left].isalnum():left 1while left < right and not s[right].isalnum():right - …

2010-2015 年阿拉斯加北坡苔原植物功能类型连续覆盖图

ABoVE: Tundra Plant Functional Type Continuous-Cover, North Slope, Alaska, 2010-2015 2010-2015 年阿拉斯加北坡苔原植物功能类型连续覆盖图 简介 文件修订日期&#xff1a;2021-08-27 数据集版本: 1 摘要 该数据集以 30 米的分辨率提供了阿拉斯加北坡约 12.5 万平方…

【RuoYi】实现文件的上传与下载

一、前言 首先&#xff0c;最近在做一个管理系统&#xff0c;里面刚好需要用到echarts图和富文本编辑器&#xff0c;然后我自己去看了官网觉得有点不好懂&#xff0c;于是去B站看来很多视频&#xff0c;然后看到了up主【程序员青戈】的视频&#xff0c;看了他讲的echarts图和富…

利用Python处理DAX多条件替换

小A&#xff1a;白茶&#xff0c;救命啊~~~ 白茶&#xff1a;什么情况&#xff1f; 小A&#xff1a;是这样的&#xff0c;最近不是临近项目上线嘛&#xff0c;有一大波度量值需要进行类似的调整&#xff0c;一个两个倒没啥&#xff0c;600多个&#xff0c;兄弟&#xff0c;救命…

从JS角度直观理解递归的本质

让我们写一个函数 pow(x, n)&#xff0c;它可以计算 x 的 n 次方。换句话说就是&#xff0c;x 乘以自身 n 次。 有两种实现方式。 迭代思路&#xff1a;使用 for 循环&#xff1a; function pow(x, n) {let result 1;// 在循环中&#xff0c;用 x 乘以 result n 次for (let i…

opencv进阶 ——(九)图像处理之人脸修复祛马赛克算法CodeFormer

算法简介 CodeFormer是一种基于AI技术深度学习的人脸复原模型&#xff0c;由南洋理工大学和商汤科技联合研究中心联合开发&#xff0c;它能够接收模糊或马赛克图像作为输入&#xff0c;并生成更清晰的原始图像。算法源码地址&#xff1a;https://github.com/sczhou/CodeFormer…

如何快速找到 RCE

背景介绍 本文将分享国外白帽子在‘侦察’阶段如何快速发现 RCE 漏洞的经历。以Apache ActiveMQ 的 CVE-2023–46604 为特例&#xff0c;重点介绍如何发现类似此类的漏洞&#xff0c;让我们开始吧。 快速发现过程 在‘侦察’阶段&#xff0c;白帽小哥会保持每周更新一次目标…

1940java swing零售库存管理系统myeclipse开发Mysql数据库CS结构java编程

一、源码特点 java swing 零售库存管理系统 是一套完善的窗体设计系统&#xff0c;对理解SWING java 编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;&#xff0c;系统主要采用C/S模式开发。 应用技术&#xff1a;javamysql 开发工具&#xff1a;…

适合技术小白学习的项目1863java在线视频网站系统 Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java在线视频网站系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助采用了java设计&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统采用web模式&#xff0c;系统主要采用B/S模式开发。 开发环境为TOMCAT7.0,Myeclipse8.5开发…

数据库、数据表的基本操作

1.数据库的基本操作 &#xff08;1&#xff09;创建数据库 &#xff08;2&#xff09;删除数据库 &#xff08;3&#xff09;将数据库的字符集修改为gbk gbk是汉字内码扩展规范&#xff0c;是GB2312和GB13000的扩展&#xff0c;主要用于简体中文。 &#xff08;4&#xff09;…

LabVIEW在高校电力电子实验中的应用

概述&#xff1a;本文介绍了如何利用LabVIEW优化高校电力电子实验&#xff0c;通过图形化编程实现参数调节、实时数据监控与存储&#xff0c;并与Simulink联动&#xff0c;提高实验效率和数据处理能力。 需求背景高校实验室在进行电机拖动和电力电子实验时&#xff0c;通常使用…

前端框架安全防范

前端框架安全防范 在现代Web开发中&#xff0c;前端框架如Angular和React已经成为构建复杂单页面应用&#xff08;SPA&#xff09;的主流工具。然而&#xff0c;随着应用复杂度的增加&#xff0c;安全问题也变得越来越重要。本文将介绍如何在使用Angular和React框架时&#xf…

施耐德 BAS PLC 基本操作指南

CPU 型号 项目使用的 PLC 型号为&#xff1a;施耐德昆腾 Quantum 140 CPU 67160 P266 CPU &#xff0c;支持热备冗余&#xff0c;内部存储 1024K&#xff0c;支持 2 个 PCMCIA 扩展卡槽CPU 模块自带接口&#xff1a;MB 串口接口、MB 串口接口、USB 接口、以太网接口&#xff…