解读Flaky Test

软件质量保障:所寫即所思|一个阿里质量人对测试的所感所悟。
Flaky Tests是什么?
初识Flaky Tests源于一个Python库-flaky,flaky是Nose和Pytest的一个扩展库,可以自动重试执行不稳定的测试。在理想情况下,我们期望测试可以稳定地执行通过或失败,但测试执行并非依赖测试用例本身,而且依赖其他执行用例所必需的元素如用例本身引用的第三方组件、环境等。Flaky则可以降低这些因素对用例的影响,当测试执行失败可以自动重试执行。
Flaky Tests是什么呢?所谓Flaky Tests,就是指在被测对象和测试条件都不变的情况下,有时候执行失败、有时候执行成功的测试,因此可以把Flaky Tests理解为不稳定的测试。
注:这里的不稳定是在大量的自动化测试数据统计前提下而言。

下面这个case就是一个Flaky Test:
import org.junit.jupiter.api.Test;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class FlakyTest {
@Testpublic void testShoppingCart() {WebDriver driver = new ChromeDriver();driver.get("https://item.jd.com/13078543.html");driver.findElement(By.id("add_button")).click();String itemCount = driver.findElement(By.id("item_count")).getText();assertEquals("1", itemCount);driver.quit();}
}
这个测试用例测试的是一个在线购物网站上的商品详情查看功能。它会打开购物车页面,添加一个商品,然后检查购物车中的商品数量是否正确。
但是,由于网络延迟或服务器负载等原因,商品详情页面的加载可能会失败,导致测试失败。因此,这个测试用例是一个Flaky Test。
要解决这个问题,我们可以使用重试机制来重新运行失败的测试用例。例如,我们可以使用JUnit Jupiter中的@RepeatedTest注解来重复运行测试用例:
import org.junit.jupiter.api.RepeatedTest;
public class FlakyTest {
@RepeatedTest(3)public void testShoppingCart() {WebDriver driver = new ChromeDriver();driver.get("https://item.jd.com/13078543.html");driver.findElement(By.id("add_button")).click();String itemCount = driver.findElement(By.id("item_count")).getText();assertEquals("1", itemCount);driver.quit();}
}
这样,如果测试用例在第一次运行时失败,它将在最多尝试3次后重新运行,以增加测试的稳定性。
Flaky Tests的危害
Flaky Tests的存在可能会给软件质量带来严重的风险,具体表现为:
1. 误导测试结果:由于测试结果不稳定,Flaky Tests可能会导致测试报告中的错误率不准确,给软件质量评估带来误导。
2. 损害测试可靠性:Flaky Tests可能会导致测试人员失去对测试过程和测试结果的信心,从而导致测试可靠性降低。
3. 浪费时间和资源:Flaky Tests可能会浪费测试人员的时间和公司的资源,因为它们需要反复运行才能确定测试结果。
4. 延误发布时间:由于Flaky Tests需要额外的修复和调试,它们可能会导致软件发布时间延迟,从而影响软件的交付时间和客户满意度。
Flaky Tests产生的原因
导致Flaky Tests的原因有很多,以下是一些常见的原因及其案例:
1. 并发问题
例如:多个测试用例同时尝试访问共享资源时可能会产生竞争关系,从而导致测试结果不稳定。
2. 外部依赖
例如:测试用例依赖于外部服务,例如数据库或API,这些服务可能会在测试运行期间出现故障或变化,从而导致测试结果不稳定。
3. 时间问题
例如:测试用例的执行时间可能会因为系统负载或其它因素而变化,从而导致测试结果不稳定。
4. 随机性
例如:测试用例包含随机数据或随机行为,这些随机因素可能导致测试结果不稳定。
5. 环境问题
例如:测试用例在不同的测试环境中可能会表现出不同的行为,例如在Windows和Linux操作系统下的测试结果可能会不同。
6. 编码错误
例如:代码实现错误或测试用例设计错误可能导致测试结果不稳定。
7. 不合理的测试用例
例如:测试用例的预期结果不清晰或者不合理,可能导致测试结果不稳定。
在解决Flaky Tests问题时,需要仔细分析测试用例的执行情况,找出导致测试结果不稳定的根本原因,并采取适当的措施来解决这些问题。
Flaky Tests真的就没有价值吗?
虽然Flaky Tests的存在会对测试过程和测试结果带来风险,通过辩证法看待问题,难道Flaky Tests真的就没有价值吗?其实在某些情况下,Flaky Tests也是具有一定的价值。
1. 发现系统性问题:Flaky Tests在某些情况下揭示系统中存在的重要问题,这些问题在稳定运行的测试用例中可能不会被发现。通过仔细分析Flaky Tests的结果,测试人员能够确定系统中的潜在问题,并加以解决。
2. 探测外部依赖问题:Flaky Tests可能揭示外部依赖问题,例如网络延迟或其他不稳定的外部服务,这些问题在正常测试用例中可能不会被发现。通过解决这些外部依赖问题,测试可靠性和软件质量可能会得到显著提高。
3. 完善测试用例:Flaky Tests可以帮助测试人员发现测试用例的缺陷或不足,例如测试用例设计不合理或测试用例中缺少关键信息。通过修复这些问题,测试用例的覆盖率和准确性可以得到提高。
需要注意的是,Flaky Tests的价值相对有限,因此在优化测试过程和测试用例时,测试人员应该尽可能地避免这种现象的出现。如果无法避免,测试人员应该注意分析测试结果,找出根本原因,并尽快解决这些问题。
相关文章
- java-04
类与对象对象内存布局(重要) 属性细节类与对象的内存分配机制(重要)注意这边 b null 改的是b指向的地址哦,我一开始想错了,以为a也会变成null方法调用机制原理图方法调用细节方法练习public class Lianxi{public stat…...
2023/3/28 16:01:35 - 队列的基本实现
队列的基本实现一、队列的概念二、队列的基本实现1.前期准备2.队列的初始化3.队列的销毁4.入队5.出队6.取队头的数据7.取队尾的数据8.队列数据的个数9.判断队列是否为空10.队列出队顺序11.功能展示12.代码展示一、队列的概念 队列:只允许在一端进行插入数据操作&am…...
2023/3/28 16:01:00 - Redis高频40问
Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis 的数据是存在内存中的…...
2023/3/28 16:00:25 - 学习HM微博项目第3天
步骤:自定义tabBar -> 版本新特性01-搭载界面 -> 版本新特性02-按钮的使用细节 -> 版本新特性03-新版本判断 自定义tabBar 在前面的学习中,系统自带的tabBar是这样的: 由于某个需求,需要在tabBar的中间加上一个发送微博…...
2023/3/28 15:53:47 - 中国象棋隐私政策
1. 适用范围 (a) 在您注册本应用帐号时,您根据本应用要求提供的个人注册信息; (b) 在您使用本应用网络服务,或访问本应用平台网页时,本应用自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览…...
2023/3/28 15:52:33 - HashMap何时会链表转红黑树
目录什么时候才会转换为红黑树?为什么要转换为红黑树?为什么不一开始就用红黑树,反而要经历一个转换的过程呢?从链表转化为红黑树的阈值为什么是8?什么时候才会转换为红黑树? 当Map链表长度大于或等于阈值…...
2023/3/28 15:52:20 - Scala的数组,元组,列表,集,映射(Map),迭代器(iterator)
文章目录1. 数组1.1 概述1.2 定长数组1.2.1 特点1.2.2 语法1.2.3 示例1.3 变长数组1.3.1 特点1.3.2 语法1.3.3 示例一: 定义变长数组1.3.4 示例二: 增删改元素1.4 遍历数组1.5 数组常用算法2. 元组2.1 格式2.2 示例2.3 访问元组中的元素3. 列表3.1 不可变列表3.1.1 特点3.1.2 语…...
2023/3/28 15:52:10 - NLP 开源形近字算法之相似字列表(番外篇)
创作目的 国内对于文本的相似度计算,开源的工具是比较丰富的。 但是对于两个汉字之间的相似度计算,国内基本一片空白。国内的参考的资料少的可怜,国外相关文档也是如此。 本项目旨在抛砖引玉,实现一个基本的相似度计算工具&…...
2023/3/28 15:51:25 - Day928.分析工具:几百万行规模的遗留系统怎么分析? -系统重构实战
分析工具:几百万行规模的遗留系统怎么分析? Hi,我是阿昌,今天学习记录的是关于分析工具:几百万行规模的遗留系统怎么分析?的内容。 设想一下如何计划整个重构的工作: 首先,已经设…...
2023/3/28 15:47:27 - 多标签在单行出现省略的实现
简言 实现在有宽度的一行内,标签过多会出现省略号。 实现 首先要实现单行省略的效果。 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content&quo…...
2023/3/28 15:43:41 - 【Verilog语法013】verilog多维数组(多维矩阵)的写法
有两种表示方法:一种是verilog语法的多维数组,另一种是system verilog语法的多维数组。 这是verilog语法: reg [A1:A0] a [B1:B0] [C1:C0] [D1:D0] ; 引用顺序是:a[B][C][D][A], 定义的a 的左边只有位宽,一对方括号[…...
2023/3/28 15:42:00 - netstat命令参数和arp命令
Usage: netstat [-ral] [-tuwx] [-en] Display networking information -r Routing table -----------------------查看路由表 -a All sockets 所有套接字状态 -l Listening sockets …...
2023/3/28 15:41:49 - macOS Ventura 13.3 (22E252) 正式版发布,ISO、IPSW、PKG 下载
请访问原文链接:https://sysin.org/blog/macOS-Ventura/,查看最新版。原创作品,转载请保留出处。 2023 年 3 月 27 日 (北京时间 28 日凌晨),macOS Ventura 13.3 正式版发布,本更新包括全新表情…...
2023/3/28 15:41:12 - Java设计模式(六)—— 命令模式
命令模式定义如下:将一个请求封装为一个对象,从而使用户可用不用的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 适合命令模式情景如下: 程序需要在不同的时刻指定、排列和执行请求程序需要…...
2023/3/28 15:39:02 - 12代酷睿安装神器!34元让小白装机也不会戳弯针脚
12th CPU 扣件强度太高疑似会造成 CPU 上的金属盖 IHS 中央出现凹陷 虽然我已经在粉丝团已经用数颗全新的 CPU 告诉大家 IHS 从过去刚存在开始到现在,中间就一直存在凹陷公差 即便如此 ~ 原厂 CPU 扣件强度极高,但防板弯的设置强度不足仍然不争的事实 如…...
2023/3/28 15:34:27 - 【ChatGPT】GPT实现原理大解析——看完就知道什么叫颠覆
文章目录前言一、ChatGPT是什么?二、那么,如何计算下一个单词的概率?三, 什么是模型?四,如何制作能完成人类任务的模型五,神经网络总结前言 ChatGPT 能够自动生成类似于人类写作的文本…...
2023/3/28 15:34:09 - OTA(Over-the-air programming)是什么?
OTA(Over the air-programming)是什么? ‒ 是指将新软件,固件,设置,加密密钥更新无线发布到手机,机顶盒等设备的方式。 ‒ 对于固件而言,由于安装在诸如ROM,EPROM和flash memory等的…...
2023/3/28 15:32:53 - FastJson序列化时过滤字段(属性)的方法总结
FastJson序列化时(即转成JSON字符串时),可以过滤掉部分字段,或者只保留部分字段,方法有很多,下面举一些常用的方法。 方法一、FastJson的注解 JSONField(serialize false)private String name; 最便捷&am…...
2023/3/28 15:32:21 - 相机单独标定的实现过程[autoware标定]、tmp文件的查看方式
安装了autoware1.13和calibration标定包,发现实现相机单独标定的过程较为坎坷,参考了一些博主的方法,发现下面的过程更加适合自己,做个笔记。 1安装标定箱(与calibration标定包的安装并不冲突) 标定工具箱…...
2023/3/28 15:31:55 - seata 使用
1 下载地址 Releases seata/seata GitHub 2 版本 seat 1.6.0 修改配置文件 applciation.yml server: port: 7091 spring: application: name: seata-server logging: config: classpath:logback-spring.xml file: path: ${user.home}/logs/seata e…...
2023/3/28 15:25:31 - 人大金仓赋能网络安全产业,筑牢数字经济发展安全底线
近日,由广东省网络空间安全协会与广东关键信息基础设施保护中心联合举办的网安联广东网络安全大会(首届)暨2023广东省网络空间安全协会年会圆满结束。作为广东省网络空间安全协会会员单位,人大金仓受邀参加,并围绕“国…...
2023/3/28 15:22:37 - Unity和GAN实现AI绘画五等分的新娘、国家队02(附源码)
UnityGAN实现AI绘画五等分的新娘、国家队02附源码写在前面源码演示视频部分界面展示使用教程敬请期待其他写在后面写在前面 博主喜欢二次元,想着在读研期间做点对自己有意义的事,因此选择了动漫人物生成方向(呜呜呜,太感谢导师理解和支持了)…...
2023/3/28 15:20:15 - 4. git 配置 Gitee 远端指定仓库并提交代码
1. 第一步:先创建一个远程仓库 点击创建后,会显示如下界面,箭头所指的地方就是目前创建的仓库的远程地址: 2. 第二步:配置SSH公钥 首先打开git bash,在命令行里输入以下命令: ssh-keygen -t…...
2023/3/28 15:16:33 - TextCNN文本分类
TextCNN 模型主要由一维卷积层和时序最大池化层构成,一维卷积层是高为 1 的二维卷积层,在每个通道上,卷积核与输入做互相关运算,并将通道之间的结果相加得到输出结果。 时序最大池化层对应一维全局最大池化层,特点是卷…...
2023/3/28 15:13:58 - 数据库系统-建模
文章目录一、建模思想1.2 ER1.2.1 实体1.2.2 属性1.2.3 联系1.3 ER的表示方法1.3.1 chen方法1.3.2 Crow’s foot方法二、工程化方法2.1 IDEFx概念2.1.1 实体2.1.2 联系三、数据建模&数据库设计3.1 总览3.1 需求分析3.2 概念数据库设计3.2.1 局部ER模型设计3.2.2 全局ER图设…...
2023/3/28 15:10:08 - Machine Learning-Ex2(吴恩达课后习题)About Logistic Regression
1. Logistic Regression1.1 Visualizing the dataData:学生两次测试的分数、是否被录取(0/1表示)plot.pyimport matplotlib.pyplot as plt # 数据图形化def Plot(data):# isin函数接收列表positive data[data.Admitted.isin([1])] # 正样本…...
2023/3/28 15:08:32 - 意大利FBA海运主要港口有哪些
意大利FBA海运主要港口有哪些?意大利是一个位于亚平宁半岛的欧洲国家,与亚得里亚海、爱奥尼亚海、第勒尼安海和利古里亚海接壤,它在欧洲、亚洲和北非有重要的海上贸易。这是一个受欢迎的旅游景点,靠近苏伊士运河和直布罗陀海峡&am…...
2023/3/28 15:07:05 - R语言计算多元积分
目录0引言一、包的载入与认识二、使用实例2.1 参数解析2.2 运行实例1:多元正态分布的积分2.3 运行实例2:二元函数积分三、总结与展望0引言 在R语言中我们经常使用integrate函数计算一元积分,例如:《R语言 【integrate】函数》1. …...
2023/3/28 15:05:05 - 解决git push报错fatal: Authentication failed for ‘https://github.com/xxx.git/‘
目录 问题现象 解决方式 问题现象 remote: Support for password authentication was removed on August 13, 2021. remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for informat…...
2023/3/28 15:01:43 - c++11 标准模板(STL)(std::unordered_multiset)(十二)
定义于头文件 <unordered_set> template< class Key, class Hash std::hash<Key>, class KeyEqual std::equal_to<Key>, class Allocator std::allocator<Key> > class unordered_multiset;(1)(C11 起)namespace pmr { …...
2023/3/28 15:00:58
最新文章
- java-04
类与对象对象内存布局(重要) 属性细节类与对象的内存分配机制(重要)注意这边 b null 改的是b指向的地址哦,我一开始想错了,以为a也会变成null方法调用机制原理图方法调用细节方法练习public class Lianxi{public stat…...
2023/3/28 16:01:35 - 队列的基本实现
队列的基本实现一、队列的概念二、队列的基本实现1.前期准备2.队列的初始化3.队列的销毁4.入队5.出队6.取队头的数据7.取队尾的数据8.队列数据的个数9.判断队列是否为空10.队列出队顺序11.功能展示12.代码展示一、队列的概念 队列:只允许在一端进行插入数据操作&am…...
2023/3/28 16:01:00 - Redis高频40问
Redis连环40问,绝对够全! Redis是什么? Redis(Remote Dictionary Server)是一个使用 C 语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis 的数据是存在内存中的…...
2023/3/28 16:00:25 - 学习HM微博项目第3天
步骤:自定义tabBar -> 版本新特性01-搭载界面 -> 版本新特性02-按钮的使用细节 -> 版本新特性03-新版本判断 自定义tabBar 在前面的学习中,系统自带的tabBar是这样的: 由于某个需求,需要在tabBar的中间加上一个发送微博…...
2023/3/28 15:53:47 - 中国象棋隐私政策
1. 适用范围 (a) 在您注册本应用帐号时,您根据本应用要求提供的个人注册信息; (b) 在您使用本应用网络服务,或访问本应用平台网页时,本应用自动接收并记录的您的浏览器和计算机上的信息,包括但不限于您的IP地址、浏览…...
2023/3/28 15:52:33 - HashMap何时会链表转红黑树
目录什么时候才会转换为红黑树?为什么要转换为红黑树?为什么不一开始就用红黑树,反而要经历一个转换的过程呢?从链表转化为红黑树的阈值为什么是8?什么时候才会转换为红黑树? 当Map链表长度大于或等于阈值…...
2023/3/28 15:52:20 - Scala的数组,元组,列表,集,映射(Map),迭代器(iterator)
文章目录1. 数组1.1 概述1.2 定长数组1.2.1 特点1.2.2 语法1.2.3 示例1.3 变长数组1.3.1 特点1.3.2 语法1.3.3 示例一: 定义变长数组1.3.4 示例二: 增删改元素1.4 遍历数组1.5 数组常用算法2. 元组2.1 格式2.2 示例2.3 访问元组中的元素3. 列表3.1 不可变列表3.1.1 特点3.1.2 语…...
2023/3/28 15:52:10 - NLP 开源形近字算法之相似字列表(番外篇)
创作目的 国内对于文本的相似度计算,开源的工具是比较丰富的。 但是对于两个汉字之间的相似度计算,国内基本一片空白。国内的参考的资料少的可怜,国外相关文档也是如此。 本项目旨在抛砖引玉,实现一个基本的相似度计算工具&…...
2023/3/28 15:51:25 - Day928.分析工具:几百万行规模的遗留系统怎么分析? -系统重构实战
分析工具:几百万行规模的遗留系统怎么分析? Hi,我是阿昌,今天学习记录的是关于分析工具:几百万行规模的遗留系统怎么分析?的内容。 设想一下如何计划整个重构的工作: 首先,已经设…...
2023/3/28 15:47:27 - 多标签在单行出现省略的实现
简言 实现在有宽度的一行内,标签过多会出现省略号。 实现 首先要实现单行省略的效果。 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content&quo…...
2023/3/28 15:43:41 - 【Verilog语法013】verilog多维数组(多维矩阵)的写法
有两种表示方法:一种是verilog语法的多维数组,另一种是system verilog语法的多维数组。 这是verilog语法: reg [A1:A0] a [B1:B0] [C1:C0] [D1:D0] ; 引用顺序是:a[B][C][D][A], 定义的a 的左边只有位宽,一对方括号[…...
2023/3/28 15:42:00 - netstat命令参数和arp命令
Usage: netstat [-ral] [-tuwx] [-en] Display networking information -r Routing table -----------------------查看路由表 -a All sockets 所有套接字状态 -l Listening sockets …...
2023/3/28 15:41:49 - macOS Ventura 13.3 (22E252) 正式版发布,ISO、IPSW、PKG 下载
请访问原文链接:https://sysin.org/blog/macOS-Ventura/,查看最新版。原创作品,转载请保留出处。 2023 年 3 月 27 日 (北京时间 28 日凌晨),macOS Ventura 13.3 正式版发布,本更新包括全新表情…...
2023/3/28 15:41:12 - Java设计模式(六)—— 命令模式
命令模式定义如下:将一个请求封装为一个对象,从而使用户可用不用的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。 适合命令模式情景如下: 程序需要在不同的时刻指定、排列和执行请求程序需要…...
2023/3/28 15:39:02 - 12代酷睿安装神器!34元让小白装机也不会戳弯针脚
12th CPU 扣件强度太高疑似会造成 CPU 上的金属盖 IHS 中央出现凹陷 虽然我已经在粉丝团已经用数颗全新的 CPU 告诉大家 IHS 从过去刚存在开始到现在,中间就一直存在凹陷公差 即便如此 ~ 原厂 CPU 扣件强度极高,但防板弯的设置强度不足仍然不争的事实 如…...
2023/3/28 15:34:27 - 【ChatGPT】GPT实现原理大解析——看完就知道什么叫颠覆
文章目录前言一、ChatGPT是什么?二、那么,如何计算下一个单词的概率?三, 什么是模型?四,如何制作能完成人类任务的模型五,神经网络总结前言 ChatGPT 能够自动生成类似于人类写作的文本…...
2023/3/28 15:34:09 - OTA(Over-the-air programming)是什么?
OTA(Over the air-programming)是什么? ‒ 是指将新软件,固件,设置,加密密钥更新无线发布到手机,机顶盒等设备的方式。 ‒ 对于固件而言,由于安装在诸如ROM,EPROM和flash memory等的…...
2023/3/28 15:32:53 - FastJson序列化时过滤字段(属性)的方法总结
FastJson序列化时(即转成JSON字符串时),可以过滤掉部分字段,或者只保留部分字段,方法有很多,下面举一些常用的方法。 方法一、FastJson的注解 JSONField(serialize false)private String name; 最便捷&am…...
2023/3/28 15:32:21 - 相机单独标定的实现过程[autoware标定]、tmp文件的查看方式
安装了autoware1.13和calibration标定包,发现实现相机单独标定的过程较为坎坷,参考了一些博主的方法,发现下面的过程更加适合自己,做个笔记。 1安装标定箱(与calibration标定包的安装并不冲突) 标定工具箱…...
2023/3/28 15:31:55 - seata 使用
1 下载地址 Releases seata/seata GitHub 2 版本 seat 1.6.0 修改配置文件 applciation.yml server: port: 7091 spring: application: name: seata-server logging: config: classpath:logback-spring.xml file: path: ${user.home}/logs/seata e…...
2023/3/28 15:25:31 - 人大金仓赋能网络安全产业,筑牢数字经济发展安全底线
近日,由广东省网络空间安全协会与广东关键信息基础设施保护中心联合举办的网安联广东网络安全大会(首届)暨2023广东省网络空间安全协会年会圆满结束。作为广东省网络空间安全协会会员单位,人大金仓受邀参加,并围绕“国…...
2023/3/28 15:22:37 - Unity和GAN实现AI绘画五等分的新娘、国家队02(附源码)
UnityGAN实现AI绘画五等分的新娘、国家队02附源码写在前面源码演示视频部分界面展示使用教程敬请期待其他写在后面写在前面 博主喜欢二次元,想着在读研期间做点对自己有意义的事,因此选择了动漫人物生成方向(呜呜呜,太感谢导师理解和支持了)…...
2023/3/28 15:20:15 - 4. git 配置 Gitee 远端指定仓库并提交代码
1. 第一步:先创建一个远程仓库 点击创建后,会显示如下界面,箭头所指的地方就是目前创建的仓库的远程地址: 2. 第二步:配置SSH公钥 首先打开git bash,在命令行里输入以下命令: ssh-keygen -t…...
2023/3/28 15:16:33 - TextCNN文本分类
TextCNN 模型主要由一维卷积层和时序最大池化层构成,一维卷积层是高为 1 的二维卷积层,在每个通道上,卷积核与输入做互相关运算,并将通道之间的结果相加得到输出结果。 时序最大池化层对应一维全局最大池化层,特点是卷…...
2023/3/28 15:13:58 - 数据库系统-建模
文章目录一、建模思想1.2 ER1.2.1 实体1.2.2 属性1.2.3 联系1.3 ER的表示方法1.3.1 chen方法1.3.2 Crow’s foot方法二、工程化方法2.1 IDEFx概念2.1.1 实体2.1.2 联系三、数据建模&数据库设计3.1 总览3.1 需求分析3.2 概念数据库设计3.2.1 局部ER模型设计3.2.2 全局ER图设…...
2023/3/28 15:10:08 - Machine Learning-Ex2(吴恩达课后习题)About Logistic Regression
1. Logistic Regression1.1 Visualizing the dataData:学生两次测试的分数、是否被录取(0/1表示)plot.pyimport matplotlib.pyplot as plt # 数据图形化def Plot(data):# isin函数接收列表positive data[data.Admitted.isin([1])] # 正样本…...
2023/3/28 15:08:32 - 意大利FBA海运主要港口有哪些
意大利FBA海运主要港口有哪些?意大利是一个位于亚平宁半岛的欧洲国家,与亚得里亚海、爱奥尼亚海、第勒尼安海和利古里亚海接壤,它在欧洲、亚洲和北非有重要的海上贸易。这是一个受欢迎的旅游景点,靠近苏伊士运河和直布罗陀海峡&am…...
2023/3/28 15:07:05 - R语言计算多元积分
目录0引言一、包的载入与认识二、使用实例2.1 参数解析2.2 运行实例1:多元正态分布的积分2.3 运行实例2:二元函数积分三、总结与展望0引言 在R语言中我们经常使用integrate函数计算一元积分,例如:《R语言 【integrate】函数》1. …...
2023/3/28 15:05:05 - 解决git push报错fatal: Authentication failed for ‘https://github.com/xxx.git/‘
目录 问题现象 解决方式 问题现象 remote: Support for password authentication was removed on August 13, 2021. remote: Please see https://docs.github.com/en/get-started/getting-started-with-git/about-remote-repositories#cloning-with-https-urls for informat…...
2023/3/28 15:01:43 - c++11 标准模板(STL)(std::unordered_multiset)(十二)
定义于头文件 <unordered_set> template< class Key, class Hash std::hash<Key>, class KeyEqual std::equal_to<Key>, class Allocator std::allocator<Key> > class unordered_multiset;(1)(C11 起)namespace pmr { …...
2023/3/28 15:00:58