结合真实的测试实例,记录一次SQL语句辅助功能测试的场景(包含多表联查及子查询)

本文结合实例讲解一下 SQL 语句通过数据库辅助进行功能测试。希望阅读本文的小伙伴,能通过这个场景实例体会到SQL 语句在真实的功能测试时起到的作用

本次功能测试涉及的sql 知识点如下:

1 SELECT 查询

2 where 子句

3 count()

4 to_char()

5 group by

6 order by

7 两表联查(这里涉及left join)

8 子查询嵌套

实例中的需求文档 :

系统的测试界面:(不好意思,写文章的时候,想去截一个好一点的图片,测试环境无法登录了)

前提解释:

这个报表展示的对所有流程的延时次数和审批次数的统计结果。

由于流程数据没有办法通过前台报表统计验证, 在测试的时候要借助于数据库进行查询验证。

思路:

1  查询出按4列字段分组统计的审批次数

2 查询出按4列字段分组统计的延时次数

3 分别验证界面展示和查询结果是否一致

4 验证降序排列(用order by 语句排序验证结果顺序和界面是否一致)

扩展:

通过两表联查将审批次数,延时次数合并在一个结果里(left join 用法 及子查询嵌套)

(其实完成单句查询也能完成本次功能的验证,时间允许也为了强化两表查询及子查询嵌套功能的运用,增加语句扩展)

语句及运行结果:

审批次数:

延时次数:

两表联查及子查询(left join)

之所以选择left join 是因为 右表 延时次数 的统计范围比 左表 审批次数 要窄,流程总表里的数据每一条都会被分组统计到 审批次数, 但是 只有 IS_TIMEOUT 这个字段为true 的才会统计

比如一个分组行中 该字段全是false 就是空所以看到延时数据 有的是null

原文地址:https://www.cnblogs.com/echozhao/p/9403479.html

时间: 2024-10-10 08:52:39

结合真实的测试实例,记录一次SQL语句辅助功能测试的场景(包含多表联查及子查询)的相关文章

MSSQL 4表联查,子查询,函数统计,分组条件查询综合应用实例

1 SELECT 2 [UserName] 3 ,[Yhxm] 4 ,[Qx] 5 ,[Phone] 6 ,[Number] = COUNT([UserName]) 7 FROM 8 (SELECT 9 [UserName] = A.[username] 10 ,[Yhxm] = B.[xm] 11 ,[Qx] = D.[P_Power] 12 ,[Phone] = B.[dh] 13 ,[DayCount] = (SELECT COUNT(*) FROM [Caihuashun_FuJian_

T-SQL - 记录01_基础sql语句操作

时间:2017-12-25 整理:byzqy 最近详细学习了一下MS SQL Server相关的知识,收获不小,在此记录一下,可能有点零散,后续会慢慢整理! 1.对数据库的一些认识 数据库中只认命令(脚本),所有的可视化操作实质上都是执行的SQL命令. 2.简单复习 1.数据库(要是使用数据库,首先需要打开服务),表(即数据表) 安装了几个数据库实例,就有几个数据库服务(服务器名称,貌似就是数据库实例名称) 2.创建数据库,创建表 3.数据类型 --带var表示不固定长度,不带var表示固定长度

用sql语句查出来字段里包含某个字符串的所有记录

一般用substring函数截取出特定字段,如 --用户姓名第二个字是'大'字的 select * from Users where SUBSTRING(UserName,2,1)='大' 第二种方法就是直接like模糊查询,看具体情况使用 select * from Users where UserName like '%大%' 原文地址:https://www.cnblogs.com/ncwoniu/p/11573753.html

第四篇:记录相关操作 SQL逻辑查询语句执行顺序

http://www.cnblogs.com/linhaifeng/articles/7372774.html 一 SELECT语句关键字的定义顺序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN <right_table> ON <join_condition> WHERE <where_condition> GROUP BY <group_by

执行一条sql语句update多条不同值的记录实现思路

如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?本文以一个示例向大家讲解下如何实现如标题所示的情况,有此需求的朋友可以了解下 通常情况下,我们会使用以下SQL语句来更新字段值: 复制代码 代码如下: UPDATE mytable SET myfield='value' WHERE other_field='other_value'; 但是,如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?举个例子,我的博客有三个分类目录(免费资源.教程指南.橱窗展示

执行一条sql语句update多条记录实现思路

执行一条sql语句update多条记录实现思路 如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?本文以一个示例向大家讲解下如何实现如标题所示的情况,有此需求的朋友可以了解下 通常情况下,我们会使用以下SQL语句来更新字段值: UPDATE mytable SET myfield='value' WHERE other_field='other_value'; 但是,如果你想更新多行数据,并且每行记录的各字段值都是各不一样,你会怎么办呢?举个例子,我的博客有三个分类目录(免

记录操作 子查询 三表联查

内容:复制表.记录详细操作.group by关键字.having关键字.order by关键字.limit.多表查询.多对多 三表联查.子查询. 复制表 复制表结构+记录(不会复制:主键.外键和索引) create table new_table select * from old_table; 只复制表结构 create table new_table select * from old_table where 1=2; #条件为假,查不到任何记录 记录详细操作 增:    insert in

微服务架构 - 离线部署k8s平台并部署测试实例

一般在公司部署或者真实环境部署k8s平台,很有可能是内网环境,也即意味着是无法连接互联网的环境,这时就需要离线部署k8s平台.在此整理离线部署k8s的步骤,分享给大家,有什么不足之处,欢迎指正. 1.准备环境 这次离线部署k8s的版本为v1.10.1,同时docker的版本为17.12.0-ce,不过本文章不介绍如何离线部署docker,如果大家要看的话,可以看本人之前写的文章<CentOS7离线部署docker> 本人准备的环境是3台虚拟机,也即1台master节点,2个node节点,ip及

Loadrunner测试实例分析

LoadRunner性能测试结果分析是个复杂的过程,通常可以从结果摘要.并发数.平均事务响应时间.每秒点击数.业务成功率.系统资源.网页细分图.Web服务器资源.数据库服务器资源等几个方面分析,如图1- 1所示.性能测试结果分析的一个重要的原则是以性能测试的需求指标为导向.我们回顾一下本次性能测试的目的,正如 所列的指标,本次测试的要求是验证在30分钟内完成2000次用户登录系统,然后进行考勤业务,最后退出,在业务操作过程中页面的响应时间不超过3秒,并且服务器的CPU使用率.内存使用率分别不超过