首页 > 其他分享 >阅读圣经丨测试上下文理解

阅读圣经丨测试上下文理解

时间:2023-07-25 10:32:35浏览次数:43  
标签:圣经 示例 结果 SUM 小伙伴 测试 上下文 度量


阅读圣经丨测试上下文理解_聚合函数

在《圣经2》中,关于上下文理解这一块,白茶看到两个有意思的小测试,决定分享给各位小伙伴。

阅读圣经丨测试上下文理解_类函数_02

阅读圣经丨测试上下文理解_大数据_03

这是一份销售数据,将其导入到PowerBI中。

阅读圣经丨测试上下文理解_类函数_04

结果如图。

阅读圣经丨测试上下文理解_编程语言_05

现在开始进行问题描述。

问题一:

为数据模型添加计算列,输入如下代码公式,结果是什么?

销售额 =
SUM ( '示例'[销售价] )

A、[销售额]所在的每一行的数字都不一样

B、[销售额]所在的每一行数字都一样

C、公式报错;无法显示,因为计算列不允许使用SUM函数。

小伙伴们,请根据上面的示例文件,思考计算列的结果。

开始思考!
1
2
3
4
5
6
7

小伙伴们,有结果了么?
没有的话可以在这里停留一下。

问题二:

在度量值界面编写下面代码,不嵌套任何聚合函数,结果是什么?

利润率 =
( '示例[销售价]-'示例'[进价] ) / '示例'[进价]

A、公式输入没问题,但是显示没结果

B、错误,系统提示不行,有红色波浪线

C、公式没问题,但是显示结果不对

开始思考!

1

2

3

4

5

6

7

阅读圣经丨测试上下文理解_类函数_06

看到这里,咱来看看正确答案。

阅读圣经丨测试上下文理解_聚合函数_07

问题一的答案:

B、每一行的数字都显示的一样。

解析:

因为SUM本身是一个聚合类的函数,它本身的聚合只是针对表中的某一列,唯一影响它计算结果的是筛选上下文

在表中添加新列输入SUM函数,这个时候它的计算环境是行上下文

环境是行上下文,执行要求是筛选上下文,这二者相碰撞结果是什么?

就是筛选上下文为空!就像在表格中我们不选择某一对象,那么默认无筛选,就会显示所有结果的汇总一样,所以这里呈现的结果是每一行都相同。

与SUM函数类似的还有MIN、MAX等基本聚合类函数。

阅读圣经丨测试上下文理解_编程语言_08

阅读圣经丨测试上下文理解_类函数_09

问题二的答案:

B、错误,系统提示不行,有红色波浪线

解析:

度量值计算的前提是什么?上下文!

还记得之前白茶提过的概念么?

激发迭代→逐行取值→计算。

度量值不像计算列一样,计算列会依据左边的列,逐行的匹配值,进行相关的结果计算,说白了就是自带行上下文。在题二的度量值中,每一行都有不同的数字,没有对它进行上下文设定,度量值就懵了!

它的内心想法就是:

卧槽!

80要减去哪个16?

这么多16!

16前面这么多值,谁是他对象!?

这不是刁难我度量值一样么!

明白了吧,就好比有人告诉你,你的相亲对象是大街上的一个女的!

这咋找?范围太广了啊!完全没思路啊!

阅读圣经丨测试上下文理解_编程语言_10

通过两个小例子,希望小伙伴们能够明白行上下文与筛选上下文的区别。如果白茶表述的不当,也请各位小伙伴多多谅解。

(白茶:T^T瞎唠叨一通,各位大佬别较真)

阅读圣经丨测试上下文理解_类函数_11

这里是白茶,一个PowerBI的初学者。

阅读圣经丨测试上下文理解_聚合函数_12

阅读圣经丨测试上下文理解_编程语言_13

阅读圣经丨测试上下文理解_编程语言_14

ID:Storysming


标签:圣经,示例,结果,SUM,小伙伴,测试,上下文,度量
From: https://blog.51cto.com/u_14795990/6843118

相关文章

  • 阅读圣经丨筛选上下文与行上下文
    最近白茶在读《圣经第二版》,再加上有很多小伙伴问过白茶总计栏显示不合理的地方,白茶决定抽出一期来描述一下上下文。(坦白说,这个地方不太好说,因为白茶对于一些地方理解的也不是很到位,只能说是一家之言。小伙伴们权当白茶瞎咧咧就好,别去较真,也请各位大佬收起手中的大刀。)先来看看本期......
  • SpringBoot中使用测试框架MockMvc来模拟HTTP请求测试Controller接口
    场景Java中进行单元测试junit.Assert断言、Mockito模拟对象、verify验证模拟结果、Java8中lambda的peek方法使用:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/127492361上面讲了开发过程中一些测试方法。如果需要在代码中直接测试某个Controller接口,除了每次启......
  • Redis 集群偶数节点跨地域部署之高可用测试
    笔者目前所在公司存在多套Redis集群:A集群主+从共60个分片,部署在3+3台物理机上,每台机器各承载10个端口主库30个端口在广州,从库30个端口在中山B集群共72个端口,部署架构一模一样上云后,均为广东的某个云厂商的2个可用区,不再使用IDC数据中心,部署架构一......
  • 回归测试
    回归测试求助编辑百科名片回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各......
  • 实战演示:Apipost接口自动化测试
    Apipost提供了可视化的接口自动化测试平台,合理运用事物控制器、条件控制器、循环控制器等控制器,可以满足各种复杂测试需求。适用场景:复杂的多接口多场景回归测试比较费时费力,自动化测试平台搭建成本、维护成本太高。这里小编用电商平台购物流程来给大家介绍在Apipost中接口变量的......
  • java并发编程(二)---上下文切换
    一、什么是上下文切换?  即使是单核处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制。时间片是CPU分配给各个线程的时间,线程会在分配的时间片内执行任务,因为时间片非常短,所以CPU通过不停地切换线程执行,让我们感觉多个线程是同时执行的,时间片一般是几......
  • 【jQuery】smartMenu右键自定义上下文菜单插件(似web QQ)
    DEMO: http://sources.ikeepstudying.com/menu-mail-qq/ 一、这是什么样的一个插件我们都知道,默认状态下,我们右键web页面,会出现一个上下文菜单,例如下图:【jQuery】smartMenu右键自定义上下文菜单插件(似webQQ)但是,浏览器默认的右键选项有时候并不是我们所需要的,......
  • 性能测试并发用户数新的计算方法
    一件产品的完成,最重要的一环便是它的性能,好产品的性能必定是被人们所需要的。这篇文章详细阐述了产品性能需求的重要性,推荐想要了解性能要求的童鞋阅读。  我刚工作时,和政府部门做了个产品,功能就是个表单录入,录入完保存到系统。拿去给用户演示,一切很完美。  但是当......
  • PyCharm 在PyCharm中运行Django测试的日志输出
    环境:Windows10  +PyCharm2022.3.3+ Djangoversion4.2.3via: https://docs.djangoproject.com/zh-hans/4.2/topics/logging/#configuring-logging 日志模块配置:在settings.py添加如下配置: importosLOGGING={"version":1,"disable_existi......
  • 【WebGL系列-01】获取WebGL上下文
    获取WebGL上下文获取上下文WebGL上下文是从<canvas>标签中获取到的,通过canvas对象的getContext()函数可以获取WebGLRenderingContext。跟据参数的不同,getContext()函数可以获取不同种类的渲染上下文。接口canvas.getContext(contextType:String,contextAttributes?:Objec......