Junit常用注解

注解是方法的“标签” 说明每个方法的“职责”

Q:总共有那些注解?
参见官方的API文档

0.常用主机及其特点·

@BeforeClass

  • 只会执行一次
  • 必须用static修饰
  • 常用来初始化测试需要的变量

@Before

  • 会执行多次(只要写一次)
  • 每个@Test执行执行之执行
  • 可以和@After成对
  • 执行次数=@Test个数

@Test

  • 用来测试方法
  • 可以有多个
  • 所修饰的的方法必须是public void

@After

  • 会执行多次(只要写一次)
  • 每个@Test执行执行之执行
  • 执行次数=@Test个数

@AfterClass

  • 只会执行一次
  • 必须用static修饰
  • 用用来恢复变量值释放使用的资源等

1.执行顺序

使用的注解不同 方法的执行顺序也会改变

原本的顺序执行=>按照特定执行顺序

在这里插入图片描述

整个流程和吃饭类似

准备饭菜(@BeforeClass)
就坐(@Before)
进餐(@Test)
起身(@After)
收拾餐桌(@AfterClass)

  • 吃饭要进行一次准备工作
  • 吃饭后要进行收拾
  • 每来一个客人就餐都要执行一套流程
    @Before->@Test->@After

总结

  • 注解是用来说明方法的“职责”的 用于标识方法
  • 当使用了方法使用了注解之后其执行顺序不再是原来的的顺序执行
  • 个别注解对方法有要求,使用的时候要注意

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

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

相关文章

[C/C++] -- CMake使用

CMake(Cross-platform Make)是一个开源的跨平台构建工具,用于自动生成用于不同操作系统和编译器的构建脚本。它可以简化项目的构建过程,使得开发人员能够更方便地管理代码、依赖项和构建设置。 CMake 使用一个名为 CMakeLists.tx…

初识网络基础

一、网络的发展 1.独立模式: 计算机之间相互独立; 在早期计算机是孤立的单机系统,无法互相通信或共享资源。 由于缺乏互联性,早期的计算机系统无法实现有效的资源共享。只能依靠光驱和网盘经行将数据拷贝,线下将数据经行传输,每台…

【蓝桥杯Python】试题 算法训练 数组移动

资源限制 内存限制:256.0MB C/C时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s 问题描述 初始数组A[N]中为1,2,..,N,N个数字,现要进行M次操作,每次操作给定一个数字i,记…

PgSQL内核特性 - push-based pipeline 执行引擎

PgSQL内核特性 - push-based pipeline 执行引擎 数据库的SQL执行引擎负责处理和执行SQL请求。通常情况下,查询优化器会输出物理执行计划,一般由一系列的算子组成。当前,有两种算子流水线构建方式:1)需求驱动的流水线&a…

Gemini VS GPT-4,当前两大顶级AI模型实测

随着谷歌在AI军备竞赛中急起直追,“有史以来最强大模型”Gemini Advanced终于上线,AI爱好者们总算等来了一款号称能够匹敌GPT-4的大语言模型。 月费19.99美元(包含Google One订阅)的Gemini Advanced实际表现如何?究竟…

flask+python高校学生综合测评管理系统 phl8b

系统包括管理员、教师和学生三个角色; 。通过研究,以MySQL为后端数据库,以python为前端技术,以pycharm为开发平台,采用vue架构,建立一个提供个人中心、学生管理、教师管理、课程类型管理、课程信息管理、学…

前端 > JS 笔试题面试考题(21-25)

简述请看下面的代码片段并回答以下问题 &#xff1f; for (var i 0; i< 5; i){var btn document.createElement(button);btn.appendChild(document.createTextNode(Button i));btn.addEventListener(click, function(){ console.log(${i} );});document.body.appendChild…

【Effective Objective - C 2.0】——读书笔记(三)

文章目录 十五、用前缀避免命名空间冲突十六、提供全能初始化方法十七、实现description方法十八、尽量使用不可变对象十九、使用清晰而协调的命名方式二十、为私有方法名加前缀二十一、理解Objective-C错误模型二十二、理解NSCopying协议 十五、用前缀避免命名空间冲突 OC语言…

Java安全 CC链1分析(Lazymap类)

Java安全 CC链1分析 前言CC链分析CC链1核心LazyMap类AnnotationInvocationHandler类 完整exp&#xff1a; 前言 在看这篇文章前&#xff0c;可以看下我的上一篇文章&#xff0c;了解下cc链1的核心与环境配置 Java安全 CC链1分析 前面我们已经讲过了CC链1的核心ChainedTransf…

python coding with ChatGPT 打卡第20天| 二叉搜索树:搜索、验证、最小绝对差、众数

相关推荐 python coding with ChatGPT 打卡第12天| 二叉树&#xff1a;理论基础 python coding with ChatGPT 打卡第13天| 二叉树的深度优先遍历 python coding with ChatGPT 打卡第14天| 二叉树的广度优先遍历 python coding with ChatGPT 打卡第15天| 二叉树&#xff1a;翻转…

opencv图像像素的读写操作

void QuickDemo::pixel_visit_demo(Mat & image) {int w image.cols;//宽度int h image.rows;//高度int dims image.channels();//通道数 图像为灰度dims等于一 图像为彩色时dims等于三 for (int row 0; row < h; row) {for (int col 0; col < w; col) {if…

Redis -- 数据库管理

目录 前言 切换数据库(select) 数据库中key的数量&#xff08;dbsize&#xff09; 清除数据库&#xff08;flushall flushdb&#xff09; 前言 MySQL有一个很重要的概念&#xff0c;那就是数据库database&#xff0c;一个MySQL里面有很多个database&#xff0c;一个datab…