JUnit 中的注释列表

2024-02-21

最近在学习并实现JUnit框架。因此,我知道 JUnit 中使用的注释很少:-@Test, @Before, @After, @Ignore, @BeforeClass, @AfterClass, @Runwith(Suite.class), @SuiteClasses({}), @Parameters, @RunWith(Parameterized.class) and @Rule.

我确信 JUnit 中使用了更多注释。任何人都可以指导我列出更多可以使用的注释以及它们在什么情况下使用?

Thanks.


这个 Github 搜索(@interface) 为您提供所有注释的列表:

基本注释

@Test https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/Test.java @Before https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/Before.java @After https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/After.java @AfterClass https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/AfterClass.java @BeforeClass https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/BeforeClass.java @Ignore https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/Ignore.java @Runwith https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/runner/RunWith.java

参数化测试

对于参数化测试使用@Parameters and @RunWith(Parameterized.class)
https://github.com/junit-team/junit/wiki/Parameterized-tests https://github.com/junit-team/junit/wiki/Parameterized-tests

Category

@Category https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/categories/Category.java
将测试分组。例如快、慢等。

https://github.com/junit-team/junit/wiki/Categories https://github.com/junit-team/junit/wiki/Categories

@IncludeCategory https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/categories/Categories.java#L84
仅运行以下类和方法 用给定的类别进行注释@IncludeCategory注释,或该类别的子类型。

@ExcludeCategory https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/categories/Categories.java#L99
的倒数@IncludeCategory

Rules

@Rule https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/Rule.java
规则允许非常灵活地添加或重新定义测试类中每个测试方法的行为。例如创建临时文件夹规则,用于在运行测试时创建临时文件夹。

https://github.com/junit-team/junit/wiki/Rules https://github.com/junit-team/junit/wiki/Rules

理论及相关注释

@Theory https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/Theory.java
理论给出了更灵活和更具表现力的断言

https://github.com/junit-team/junit/wiki/Theories https://github.com/junit-team/junit/wiki/Theories

@DataPoint https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/DataPoint.java
使用注释字段或方法@DataPoint会导致字段值 或该方法返回的值用作潜在参数 该课程中的理论

@DataPoints https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/DataPoints.java

的扩展@Datapoint
使用注释数组或可迭代类型字段或方法@DataPoints将导致数组或可迭代中的值被用作潜在的 该类理论的参数

@FromDataPoints https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/FromDataPoints.java

注释 a 的参数@Theory方法与@FromDataPoints将限制 数据点被视为该参数的潜在值@DataPoints与给定的名字

@ParametersSuppliedBy https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/ParametersSuppliedBy.java
注释一个@Theory方法参数与@ParametersSuppliedBy导致它被提供 来自命名的值ParameterSupplier当作为理论运行时

@TestedOn https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/experimental/theories/suppliers/TestedOn.java

The @TestedOn注释采用一组值用作注释的数据点 范围。

e.g.

@Theory
public void multiplyIsInverseOfDivideWithInlineDataPoints(
        @TestedOn(ints = {0, 5, 10}) int amount,
        @TestedOn(ints = {0, 1, 2}) int m
) {
    assumeThat(m, not(0));
    assertThat(new Dollar(amount).times(m).divideBy(m).getAmount(), is(amount));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JUnit 中的注释列表 的相关文章

  • java中监视目录变化

    我正在使用 WatchService 来监视目录中的更改 特别是目录中新文件的创建 下面是我的代码 package watcher import java nio file import static java nio file Stand
  • 使用 Tabula 通过 Python 读取 pdf 时出现 Java 错误

    我已经安装了 tabula 库 用于使用 python 将 pdf 读取到 pandas 数据框中 但是当我运行代码时 import tabula df tabula read pdf sample1 pdf pages 1 我得到了例外
  • java.lang.ClassNotFoundException:javax.mail.MessagingException

    我想使用 eclipse 将电子邮件从我的 gmail 帐户发送到另一个邮件帐户 我使用 apache tomcat 7 0 34 作为我的 Web 服务器 并使用端口 8080 作为 apache 服务器 HTTP 1 1 并使用 JRE
  • Java 的支持向量机?

    我想用Java编写一个 智能监视器 它可以随时发出警报detects即将到来的性能问题 我的 Java 应用程序正在以结构化格式将数据写入日志文件
  • 如何调试“com.android.okhttp”

    在android kitkat中 URLConnection的实现已经被OkHttp取代 如何调试呢 OkHttp 位于此目录中 external okhttp android main java com squareup okhttp 当
  • Jframe 内有 2 个 Jdialogs 的 setModal 问题

    当我设置第一个选项时 我遇到了问题JDialog模态 第二个非模态 这是我正在尝试实现的功能 单击 测试对话框 按钮 一个JDialog有名字自定义对话框 主要的将会打开 如果单击 是 选项自定义对话框主 其他JDialog named 自
  • 从 MATLAB 调用 Java?

    我想要Matlab程序调用java文件 最好有一个例子 需要考虑三种情况 Java 内置库 也就是说 任何描述的here http docs oracle com javase 6 docs api 这些项目可以直接调用 例如 map ja
  • Runtime.exec 处理包含多个空格的参数

    我怎样才能进行以下运行 public class ExecTest public static void main String args try Notice the multiple spaces in the argument Str
  • 如何在字段值无效的情况下更改 Struts2 验证错误消息?

    我在 Web 表单上使用 Struts2 验证 如果字段假设为整数或日期 则
  • 从jar中获取资源

    我有包含文件的 jar myJar res endingRule txt myJar wordcalculator merger Marge class 在 Marge java 中我有代码 private static final Str
  • Akka 与现有 java 项目集成的示例

    如果我已经有现有的javaWeb 应用程序使用spring and servlet容器 将 Akka 集成到其中的正确方法是什么 就像我将会有Actor1 and Actor2互相沟通的 开始使用这些演员的切入点是什么 例如 1 把它放在那
  • Java Swing - 如何禁用 JPanel?

    我有一些JComponents on a JPanel我想在按下 开始 按钮时禁用所有这些组件 目前 我通过以下方式显式禁用所有组件 component1 setEnabled false 但是有什么办法可以一次性禁用所有组件吗 我尝试禁用
  • 为什么\0在java中不同系统中打印不同的输出

    下面的代码在不同的系统中打印不同的输出 String s hello vsrd replace 0 System out println s 当我在我的系统中尝试时 Linux Ubuntu Netbeans 7 1 它打印 When I
  • Spring @Cacheable 和 @Async 注解

    我需要缓存一些异步计算的结果 具体来说 为了克服这个问题 我尝试使用 Spring 4 3 缓存和异步计算功能 作为示例 我们采用以下代码 Service class AsyncService Async Cacheable users C
  • 在 Spring 上下文中查找方法级自定义注释

    我想知道的是 所有的类 方法Spring http en wikipedia org wiki Spring Framework注释为 Versioned的bean 我创建了自定义注释 Target ElementType METHOD E
  • 列表过滤器内的 Java 8 lambda 列表

    示例 JSON id 1 products id 333 status Active id 222 status Inactive id 111 status Active id 2 products id 6 status Active
  • 在java中以原子方式获取多个锁

    我有以下代码 注意 为了可读性 我尽可能简化了代码 如果我忘记了任何关键部分 请告诉我 public class User private Relations relations public User relations new Rela
  • Java RMI - 客户端超时

    我正在使用 Java RMI 构建分布式系统 它必须支持服务器丢失 如果我的客户端使用 RMI 连接到服务器 如果该服务器出现故障 例如电缆问题 我的客户端应该会收到异常 以便它可以连接到其他服务器 但是当服务器出现故障时 我的客户端什么也
  • Spring RESTful控制器方法改进建议

    我是 Spring REST 和 Hibernate 的新手 也就是说 我尝试组合一个企业级控制器方法 我计划将其用作未来开发的模式 您认为可以通过哪些方法来改进 我确信有很多 RequestMapping value user metho
  • java'assert'和'if(){}else exit;'之间的区别

    java和java有什么区别assert and if else exit 我可以用吗if else exit代替assert 也许有点谷歌 您应该记住的主要事情是 if else 语句应该用于程序流程控制 而assert 关键字应该仅用于

随机推荐

  • 在 MSBuild 中获取本机 exe 的文件版本

    我在 Visual Studio 2010 解决方案中有许多 Visual C 项目 此解决方案中还有一个 WiX 项目 它为可执行文件 C 项目之一的产品 构建安装程序 可执行文件在其项目中有一个资源文件 它将程序的版本写入可执行文件 现
  • Nuget Config.Transform 格式问题

    我创建了一个Nuget 配置转换文件 http docs nuget org docs creating packages configuration file and source code transformations具有以下变换
  • ActivityInstrumentationTestCase2 中的模拟帐户

    在我的活动中 我获得了帐户onCreate public void MyActivity extends Activity private Account accounts Override protected void onCreate
  • 什么是概率数据结构?

    我读过有关 概率 数据结构的内容 例如布隆过滤器和跳过列表 概率数据结构有哪些共同特征以及它们的用途是什么 可能有很多不同的 并且很好的 答案 但以我的拙见 概率数据结构的共同特征是它们为您提供近似的而不是精确的答案 这里有多少件物品 大约
  • 最终瞬态字段的序列化/反序列化

    In this https stackoverflow com questions 2968876 final transient fields and serialization问题说final transient序列化后字段不能设置为任
  • 检测数组中作为复杂多边形顶点的一组点是否按顺时针或逆时针顺序定义?

    编辑 我更新了program http colekito com ProgrammingProjects Science 20Fair 有了答案 效果很好 我正在做一个program http colekito com Programmin
  • 如何让 SQLAlchemy 覆盖 MySQL“更新 CURRENT_TIMESTAMP”

    我继承了一个较旧的数据库 该数据库设置为 更新时 CURRENT TIMESTAMP 该字段放在一个仅应该描述项目创建的字段上 使用 PHP 我一直在 UPDATE 子句上使用 timestamp timestamp 但在 SQLAlche
  • C++ system() 函数 — 如何收集发出的命令的输出?

    我正在使用 C 运行一些命令system 功能 int system const char command 如何从发出的命令中收集标准输出 具体来说 我想收集发出的命令的输出 例如 发出命令的输出的目录列表 dir命令 您是否正在寻找执行命
  • 测量 ASP.NET Core 中异步代码与同步代码的性能

    我正在尝试使用 SQL Server Express 和 EF Core 3 1 3 来衡量 ASP NET Core 3 1 中异步与同步的性能 并且有两个完全相同的函数 除了一个是异步的 一个是同步的 HttpGet search de
  • 我们如何根据索引更新dynamodb表(而不是基于主键和范围键)

    我们如何基于索引 而不是基于主键和范围键 更新dynamodb表 我有一个按名称创建的索引key id index哈希值是asset id范围是hit id 我想根据以下内容更新表格key id index因为我在更新时不知道这些 var
  • 我获得了客户端中间件,但如何保护 S3 上的用户资源?

    我得到了客户端中间件 但我不希望出现用户意外或恶意删除其他用户的资源的情况 如何保护 S3 上的资源 以便用户只能删除自己的资源 而不能删除任何其他用户的资源 非常感谢 我不希望出现用户意外或恶意删除其他用户资源的情况 当您设置 S3 存储
  • Webpack hmr:__webpack_hmr 404 未找到

    我正在使用 webpack dev server 进行热模块替换 它工作得很好 但是这个错误每隔几秒钟就会出现在控制台中 GET http mysite 8080 webpack hmr 404 Not Found 这是我的 webpack
  • JSON Patch 规范的解释

    我有一个关于 JSON Patch 的解释的问题 RFC 6902 https www rfc editor org rfc rfc6902 假设我有一个如下所示的资源 type assembly uri http example com
  • useMemo 与 useEffect + useState

    使用有什么好处吗useMemo 例如 对于密集的函数调用 而不是使用组合useEffect and useState 这里有两个定制的钩子 乍一看它们的工作原理完全相同 此外useMemo的返回值为null在第一次渲染时 useEffect
  • 简单就地离散傅立叶变换 (DFT)

    我正在编写一个非常简单的就地 DFT 我正在使用此处显示的公式 http en wikipedia org wiki Discrete Fourier transform Definition http en wikipedia org w
  • 如何配置 IPython 以与普通 Python REPL 相同的方式执行单元块?

    普通 Python REPL gt gt gt na na gt gt gt for i in range 4 f else batman nana nananana nananananananana nananananananananan
  • 追踪在页面加载时应用内联样式的 JavaScript

    我正在管理一个 DNN 网站 并试图找到应用于主页上某些元素的 width 100 内联样式的来源 DNN 中包含一大堆难以手动解析的 JS 库 但我打开了 Chrome 开发者工具 并在 源 选项卡中搜索了页面上加载的每个 JS 文件 以
  • 将内联样式动画恢复到初始状态

    我已经实现了一个 CSS 解决方案来为与内联设置的样式设置动画CSS Tricks 的指导 https css tricks com animate to an inline style 还用过SO的帮助 https stackoverfl
  • SQL Server 相当于 ORACLE INSTR

    我想知道在 SQL Server 中是否有相当于 Oracle 的INSTR功能 我知道有CHARINDEX and PATINDEX 但在 Oracle 版本中 我还可以指定我要查找的字符的第 N 次出现 Oracle INSTR ins
  • JUnit 中的注释列表

    最近在学习并实现JUnit框架 因此 我知道 JUnit 中使用的注释很少 Test Before After Ignore BeforeClass AfterClass Runwith Suite class SuiteClasses P