问题标签 [assertj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
253 浏览

java - JUnit 测试 JTable 单元格工具提示

我正在构建一个带有自定义 TableCellRenderer 的 JTable,它为某些单元格设置工具提示。工具提示提供有关单元格内容的更多信息,因此对于每个拥有它的单元格来说,它是不同的。

对于测试,我使用 AssertJ 和 JUnit。

我如何测试是否显示了正确的工具提示?我想出了两种方法:

  1. 获取由 TableCellRenderer 创建的组件并检查它们的工具提示——不幸的是,即使我为每个组件都使用了名称,也找不到它们。

  2. 自动将鼠标放在单元格上并检查是否有包含所需内容的工具提示。不幸的是,我不知道如何做到这一点。

  3. ...?

0 投票
2 回答
425 浏览

tdd - AssertJ 和 Mockito:检查一个稍微复杂的 JTable 事件?

我正在阅读“Growing Object-Oriented Software Guided by Tests”一书。

但我使用 AssertJ 和 Mockito 而不是 Hamcrest 和 jMock。

我以前需要检查与JTable.

(请注意refEq,几天前 Mureinik在这里向我介绍了这一点)。

现在我需要检查类型TableModelEvent的第 0 行是否恰好出现了一个TableModelEvent.UPDATE。本书有:

...aChangeInRow似乎来自 jMock。

NBTableModelEvent有一个有用的方法getType()。这是我想写的:

但这甚至不能编译......我应该写什么?

更一般地说,是否有一种 AssertJ/Mockito 技术用于提取作为参数(此处为 a TableModelEvent)传递给已验证方法的值,以便对其进行任何您想要的测试?

0 投票
1 回答
1290 浏览

java - 使用 AssertJ 或 JUnit 断言身份

编辑二

基本上,问题是是否有 AssertJ(首选)或 JUnit 断言:

编辑我

的测试类 (CUT)扩展了 JAXB 的XmlAdapter. 解组 XML 文件时,它应该保证相等的对象只存在一次。为了验证这一点,我的测试目前看起来像这样(在示例中,标准 ctor 创建了相等的对象):

有没有办法用 AssertJ 或 JUnit 显式断言身份?

原帖

的测试类(CUT)有一个方法(例如foo),它应该保证返回的对象——相等的——只存在一次。目前,我正在使用以下断言语句:

有没有办法用 AssertJ 或 JUnit 显式断言身份?

0 投票
1 回答
314 浏览

java - Java 中带有集合的泛型和通配符

在使用 AssertJ 的测试类中,我的代码类似于以下内容:

has我在调用and时收到编译错误doesNotHave

我是 Java 新手,但我不明白这个问题:是和extendsjava.util.List的超类型,不是吗?java.util.Listjava.lang.Stringjava.lang.String

0 投票
0 回答
341 浏览

java - 使用 Given-When-Then 样式测试异步 API,多个 When-Then?

我知道建议在测试中使用“单个断言”或在 BDD 范例中使用一组“When”和“Then”。

在测试异步API时,我在想是否可以放宽这个假设。必须首先提出请求,然后才能完成请求。

像这样的东西:

请注意,有两组When-Then。

assertAll()那里强制断言第一组 AssertJ 软断言。

在实际实现中,获取通常是通过 HTTP 完成的,但是,对于测试,有一个模拟的获取器,并且获取的完成是通过模拟的fetcher.yieldFetch();

您认为整体结构是编写此类测试的好方法吗?

还有哪些其他/更好的方法?

0 投票
2 回答
3445 浏览

java - 找不到 java.nio.file.Path 的类文件

org.assertj:assertj-core:3.6.2用来测试我的android项目。根据官方规定,我应该将 java 8 与 assertj 3.x 一起使用。

这是我的测试类,我正在尝试验证单击执行的代码何时可以开始预期的活动。

但是当我运行测试时,我得到了这个错误:

我在谷歌上搜索,发现它可能是由错误版本的 java 引起的(我真的不确定)。

以下是有关我的 java 配置的一些信息:

并且在项目结构中,我还将JDK设置为jdk1.8.0_112 在此处输入图像描述

如果是java版本引起的,应该怎么办?如果没有,那我该怎么办?

0 投票
1 回答
982 浏览

spring-boot - AssertJ 抛出测试失败

我正在尝试使用 AsssertJ 在junit 中做一个异常测试用例。但我收到以下错误: 结果:

失败的测试:BatchManagerTests.testUniqueBatchpart:225 期望代码引发 throwable。

测试运行:149,失败:1,错误:0,跳过:0


测试用例的代码是


我要测试的代码是:

0 投票
1 回答
595 浏览

java - AssertJ 断言 List仅包含 long[]

有没有办法断言 List 只包含/恰好包含 long[] 数组?

代码:

我得到Cannot resolve method containsExactly(long[])。我该怎么做这个断言?有没有不直接输入的1, 2, 3, 4, 5方法containsExactly

0 投票
1 回答
2802 浏览

java - 日期比较中的 AssertThat 用法

我想针对带有日期的搜索编写一个测试。我正在考虑类似的测试代码

其中类结构类似于以下内容:

因为查询是在给定日期之后的任何预订上进行的,所以我的测试将检查该字段确实晚于该日期。经过一些在线搜索,我没有看到任何有用的信息。我想知道我是否走在正确的轨道上。

有什么建议么?

更新:

后来,我在 build.gradle 文件中更改了依赖项设置如下:

拥有最新版本的assertj。

更新 2:

以下是任何以“is”开头的方法的屏幕截图。“isAfter”不在列表中。

在此处输入图像描述

0 投票
1 回答
96 浏览

java - 带有“可迭代断言”的 AssertJ 结果反馈

我正在检查字符串列表是否包含满足特定条件的特定数字,特别是它们是否包含子字符串,忽略大小写。

所以我想出了这个(该failedResults领域的原因将变得显而易见):

如果这失败了:

它打印出List<String> paramsPassed,但没有说明实际的失败次数。

我认为这可能会奏效,但事实并非如此:

...这只是打印“失败 0”,因此显然getFailedResults()在执行测试之前调用了该方法。在 AssertJ 内部的某个地方,这个故障数字一定是计算出来的……有没有办法为用户打印出来?