当前位置: 首页 > news >正文

学点儿Java_Day7_在实体类当中IDEA无法进行单元测试(@Test没有启动按钮)

  在敲代码体会继承和访问修饰符的时候忽然遇到了单元测试不管用的情况,表现为没有启动按钮
在这里插入图片描述
  经过一番折腾,发现我的测试是在具有构造函数的实体类Person当中进行的,当我把所有的构造函数删除后,启动按钮又出来了,加上之后又没了。
在这里插入图片描述
  然后我就和ChatGPT发生了如下对话:

  A: 类里边是不是最好不要进行单元测试
  Q: 通常情况下,类本身不应该包含单元测试。单元测试是用来测试类的方法和行为是否符合预期的工具,而不是测试类本身。类应该专注于实现特定的功能或者模型化特定的实体,而不应该包含测试逻辑。

  通常情况下,单元测试应该编写在一个独立的测试类中,测试类中的方法测试目标类的方法和行为。这种做法的好处包括:

  分离关注点(Separation of Concerns): 将测试逻辑与实际的业务逻辑分开,使代码更加清晰和易于维护。

  保持代码整洁(Keep Code Clean): 将测试代码与生产代码分离,有助于保持生产代码的整洁和简单,减少混乱和不必要的复杂性。

  提高可测试性(Improve Testability): 将测试代码放在单独的测试类中,可以更轻松地编写和运行测试,提高代码的可测试性。

  符合测试驱动开发(TDD)原则: 测试驱动开发强调先编写测试,再编写实现代码。将测试代码与生产代码分开,有助于更好地实践TDD原则。

  因此,最好的做法是将单元测试代码放在单独的测试类中,测试目标类的方法和行为,而不是将测试逻辑直接写在目标类中。
在这里插入图片描述
  嗯,就是这么神奇,这个解释我也勉强接受吧,以后注意就好了

相关文章:

学点儿Java_Day7_在实体类当中IDEA无法进行单元测试(@Test没有启动按钮)

在敲代码体会继承和访问修饰符的时候忽然遇到了单元测试不管用的情况,表现为没有启动按钮   经过一番折腾,发现我的测试是在具有构造函数的实体类Person当中进行的,当我把所有的构造函数删除后,启动按钮又出来了,加…...

C语言:二叉树基础

一、树 1.1 树的概念 1.树是有n个节点组成的具有层次关系的集合,是一种非线性的结构。 2.树的第一个节点称为根,根没有前驱节点。 3.除了根节点,其余每个节点都只有一个前驱节点,有0个或多个后继节点。 4.节点的度&#x…...

LeetCode热题Hot100-两数之和

充分意识到Coding能力的重要性,重启算法刷题之旅。 没想到这么简单的题目都写的磕磕绊绊。 一刷只写自己的解,二刷再看有没有其他更巧妙的方法~ 题目: 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目…...

鸿蒙实战开发-如何通过拖动滑块调节应用内字体大小

介绍 本篇Codelab将介绍如何使用基础组件Slider,通过拖动滑块调节应用内字体大小。要求完成以下功能: 实现两个页面的UX:主页面和字体大小调节页面。拖动滑块改变字体大小系数,列表页和调节页面字体大小同步变化。往右拖动滑块字…...

matlab实现神经网络检测手写数字

一、要求 1.计算sigmoid函数的梯度; 2.随机初始化网络权重; 3.编写网络的代价函数。 二、算法介绍 神经网络结构: 不正则化的神经网络的代价函数: 正则化: S型函数求导: 反向传播算法&…...

增强现实与虚拟现实中的大模型应用:沉浸式体验的创新

增强现实与虚拟现实中的大模型应用:沉浸式体验的创新 1. 背景介绍 随着技术的进步,增强现实(AR)和虚拟现实(VR)正在成为越来越受欢迎的沉浸式体验方式。大模型,如神经网络和深度学习模型&…...

【数据分析案列】--- 北京某平台二手房可视化数据分析

一、引言 本案列基于北京某平台的二手房数据,通过数据可视化的方式对二手房市场进行分析。通过对获取的数据进行清冼(至关重要),对房屋价格、面积、有无电梯等因素的可视化展示,我们可以深入了解北京二手房市场的特点…...

【Golang星辰图】创造美丽图表,洞察数据:解析Go语言中的数据可视化和数据分析库

解锁数据的力量:深入研究Go语言中的数据可视化和数据分析库 前言 本文将介绍Go语言中几个优秀的数据可视化和数据分析库,以帮助开发者更好地处理和分析数据。这些库提供了丰富的功能和工具,可用于创建漂亮的可视化图表、进行数值计算和数据…...

阿里云原生:如何熟悉一个系统

原文地址:https://mp.weixin.qq.com/s/J8eK-qRMkmHEQZ_dVts9aQ?poc_tokenHMA-_mWjfcDmGVW6hXX1xEDDvuJPE3pL9-8uSlyY 导读:本文总结了熟悉系统主要分三部分:业务学习、技术学习、实战。每部分会梳理一些在学习过程中需要解答的问题,这些问题…...

Scala第十一章节(正则表达式和异常处理)

4. 正则表达式 4.1 概述 所谓的正则表达式指的是正确的,符合特定规则的式子, 它是一门独立的语言, 并且能被兼容到绝大多数的编程语言中。在scala中, 可以很方便地使用正则表达式来匹配数据。具体如下: Scala中提供了Regex类来定义正则表达式.要构造一个Regex对象&#xff0…...

Flutter运行MacOs网络请求报错Unhandled Exception: DioException [connection error]:...

报错信息 [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: DioException [connection error]: The connection errored: Connection failed This indicates an error which most likely cannot be solved by the library. Error: SocketException: …...

基于SpringBoot+MyBatis框架的智慧生活商城系统的设计与实现(源码+LW+部署+讲解)

目录 前言 需求分析 可行性分析 技术实现 后端框架:Spring Boot 持久层框架:MyBatis 前端框架:Vue.js 数据库:MySQL 功能介绍 前台功能拓展 商品详情单管理 个人中心 秒杀活动 推荐系统 评论与评分系统 后台功能拓…...

Godot 学习笔记(5):彻底的项目工程化,解决GodotProjectDir is null

文章目录 前言GodotProjectDir is null解决方法解决警告问题根本解决代码问题测试引用其实其它库的输出路径无所谓。 总结 前言 Godot 项目工程化上有一朵乌云,我看Godot的Visual Studio 项目的时候,发现如果是手动新建项目导入Godot包,会导…...

Openharmony

OpenHarmony 是一个开源的、多设备分布式操作系统,由开放原子开源基金会(OpenAtom Foundation)孵化及运营。它旨在提供跨多种设备的统一开发体验,支持一次开发,多端部署。OpenHarmony 的系统架构遵循分层设计原则&…...

24计算机考研调剂 | 华南师范大学

华南师范大学接收调剂研究生 考研调剂招生信息 学校:华南师范大学 专业:- 年级:2024 招生人数:- 招生状态:正在招生中 联系方式:********* (为保护个人隐私,联系方式仅限APP查看) 补充内容 课题组主要研究生物拉曼光谱技术、基于荧光的微生物快检技术、显微成像设备与相…...

【Node.js】全局变量和全局 API

node 环境中没有 dom 和 bom ,此外 es 基本上都是可以正常使用的。 如果一定要使用 dom 和bom,可以借助第三方库 jsdom 帮助我们实现操作。npm i jsdom 实例: const fs require(node:fs) const {JSDOM} require(jsdom)const dom new JS…...

Install Docker

Docker Desktop 直接安装 Docker Desktop Docker Desktop includes the Docker daemon (dockerd), the Docker client (docker), Docker Compose, Docker Content Trust, Kubernetes, and Credential Helper. Linux下安装Docker CE 参考官方文档 参见阿里云的文档 # step 1…...

Orbit 使用指南 10|在机器人上安装传感器 | Isaac Sim | Omniverse

如是我闻: 资产类(asset classes)允许我们创建和模拟机器人,而传感器 (sensors) 则帮助我们获取关于环境的信息,获取不同的本体感知和外界感知信息。例如,摄像头传感器可用于获取环境的视觉信息&#xff0c…...

GPT系列模型的特点

GPT系列模型(包括GPT-1、GPT-2和GPT-3)都基于自回归机制的Transformer架构。在设计上,这些模型的核心思想是利用Transformer架构来捕捉整个序列的上下文信息,通过其独特的自回归机制逐步地整合整个序列的完整语义。GPT系列模型的设…...

Oracle Data Guard常用命令

--查询数据库角色和保护模式 select database_role,switchover_status from v$database; --切换备库为主库(切换后,主库为mount状态) --TO PRIMARY alter database commit to switchover to primary; --SESSIONS ACTIVE alter database comm…...

C++和OpenGL实现3D游戏编程【连载6】——不规则图形的纹理贴图(附源码)

🔥C++和OpenGL实现3D游戏编程【目录】 1、本节实现的内容 上一节我们讨论了纹理贴图的相关基础操作,但上一节的纹理贴图操作基本上都是规则图形,包括圆形和球形虽然复杂一点,但是它也是规则的。这一节课我们要讨论一下,怎么在不规则图形上纹理贴图,就比如文章下图的心形…...

Linux内核中的电源管理技术详解

Linux内核中的电源管理技术详解 引言 电源管理是Linux内核中一项重要的功能,它负责管理系统的电源消耗,提高能源效率,延长设备的电池寿命。随着移动设备和数据中心的普及,电源管理变得越来越重要。Linux内核通过一系列电源管理技术…...

抖音直播回放全能下载方案:从技术原理到创新应用的完整攻略

抖音直播回放全能下载方案:从技术原理到创新应用的完整攻略 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback …...

企业微信控制OpenClaw中文版完整图文教程

教程使用的openclaw中文版一键安装包版本 下载地址:openclaw简体中文一键安装包https://openclaw.ikidi.top/api/download/package/15?promoCodeIV0047777BE1 一、准备工作(企业微信端) 登录企业微信管理后台访问地址:https://w…...

3个突破性技术让文件传输速度提升280-420%:开源下载工具ctfileGet全解析

3个突破性技术让文件传输速度提升280-420%:开源下载工具ctfileGet全解析 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 当你尝试下载5GB数据集时,是否遇到过进度条停滞在15%的绝…...

图解Simple-BEV核心模块:从2D图像到3D BEV特征图的完整数据流解析

图解Simple-BEV核心模块:从2D图像到3D BEV特征图的完整数据流解析 想象一下,当你驾驶汽车时,眼睛看到的只是前方有限的视野,而大脑却能神奇地将这些二维画面重构为三维空间感知。这正是自动驾驶系统中BEV(鸟瞰图&#…...

MKDV4GCL-ABB嵌入式存储芯片在智能物联网设备中的关键应用解析

1. 为什么物联网设备需要专用存储芯片? 第一次拆解智能家居设备时,我发现很多厂商都在用TF卡扩展存储。但实际使用三个月后,问题就来了——频繁读写导致卡片损坏,设备不断报存储错误。这就是典型选错存储方案的后果。物联网设备对…...

Qwen2.5-VL-7B-Instruct部署教程:国产化信创环境(昇腾/海光)适配可行性分析

Qwen2.5-VL-7B-Instruct部署教程:国产化信创环境(昇腾/海光)适配可行性分析 1. 项目背景与意义 Qwen2.5-VL-7B-Instruct作为阿里通义千问推出的多模态大模型,在图文理解和交互方面表现出色。随着国产化信创环境的普及&#xff0…...

nsenter 实战技巧:如何绕过 cgroups 限制进行容器诊断

nsenter 实战技巧:如何绕过 cgroups 限制进行容器诊断 【免费下载链接】nsenter 项目地址: https://gitcode.com/gh_mirrors/ns/nsenter 在容器化部署中,nsenter 是一款强大的系统工具,它能够让用户直接进入正在运行的容器命名空间&a…...

别再只写代码了!聊聊用纯硬件电路实现车位检测的逻辑设计与边界保护

从软件思维到硬件逻辑:构建无MCU的车位检测系统设计实战 在嵌入式开发领域,我们习惯了用单片机配C语言的经典组合解决问题——写几行if-else判断边界条件,用定时器处理防抖,通过中断响应外部事件。但当我第一次看到仅用74系列芯片…...