问题标签 [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.
java - JUnit 测试 JTable 单元格工具提示
我正在构建一个带有自定义 TableCellRenderer 的 JTable,它为某些单元格设置工具提示。工具提示提供有关单元格内容的更多信息,因此对于每个拥有它的单元格来说,它是不同的。
对于测试,我使用 AssertJ 和 JUnit。
我如何测试是否显示了正确的工具提示?我想出了两种方法:
获取由 TableCellRenderer 创建的组件并检查它们的工具提示——不幸的是,即使我为每个组件都使用了名称,也找不到它们。
自动将鼠标放在单元格上并检查是否有包含所需内容的工具提示。不幸的是,我不知道如何做到这一点。
...?
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
)传递给已验证方法的值,以便对其进行任何您想要的测试?
java - 使用 AssertJ 或 JUnit 断言身份
编辑二
基本上,问题是是否有 AssertJ(首选)或 JUnit 断言:
编辑我
我的测试类 (CUT)扩展了 JAXB 的XmlAdapter
. 解组 XML 文件时,它应该保证相等的对象只存在一次。为了验证这一点,我的测试目前看起来像这样(在示例中,标准 ctor 创建了相等的对象):
有没有办法用 AssertJ 或 JUnit 显式断言身份?
原帖
我的测试类(CUT)有一个方法(例如foo
),它应该保证返回的对象——相等的——只存在一次。目前,我正在使用以下断言语句:
有没有办法用 AssertJ 或 JUnit 显式断言身份?
java - Java 中带有集合的泛型和通配符
在使用 AssertJ 的测试类中,我的代码类似于以下内容:
has
我在调用and时收到编译错误doesNotHave
:
我是 Java 新手,但我不明白这个问题:是和extendsjava.util.List
的超类型,不是吗?java.util.List
java.lang.String
java.lang.String
java - 使用 Given-When-Then 样式测试异步 API,多个 When-Then?
我知道建议在测试中使用“单个断言”或在 BDD 范例中使用一组“When”和“Then”。
在测试异步API时,我在想是否可以放宽这个假设。必须首先提出请求,然后才能完成请求。
像这样的东西:
请注意,有两组When-Then。
在assertAll()
那里强制断言第一组 AssertJ 软断言。
在实际实现中,获取通常是通过 HTTP 完成的,但是,对于测试,有一个模拟的获取器,并且获取的完成是通过模拟的fetcher.yieldFetch();
您认为整体结构是编写此类测试的好方法吗?
还有哪些其他/更好的方法?
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版本引起的,应该怎么办?如果没有,那我该怎么办?
spring-boot - AssertJ 抛出测试失败
我正在尝试使用 AsssertJ 在junit 中做一个异常测试用例。但我收到以下错误: 结果:
失败的测试:BatchManagerTests.testUniqueBatchpart:225 期望代码引发 throwable。
测试运行:149,失败:1,错误:0,跳过:0
测试用例的代码是
我要测试的代码是:
java - AssertJ 断言 List仅包含 long[]
有没有办法断言 List 只包含/恰好包含 long[] 数组?
代码:
我得到Cannot resolve method containsExactly(long[])
。我该怎么做这个断言?有没有不直接输入的1, 2, 3, 4, 5
方法containsExactly
?
java - 带有“可迭代断言”的 AssertJ 结果反馈
我正在检查字符串列表是否包含满足特定条件的特定数字,特别是它们是否包含子字符串,忽略大小写。
所以我想出了这个(该failedResults
领域的原因将变得显而易见):
如果这失败了:
它打印出List<String> paramsPassed
,但没有说明实际的失败次数。
我认为这可能会奏效,但事实并非如此:
...这只是打印“失败 0”,因此显然getFailedResults()
在执行测试之前调用了该方法。在 AssertJ 内部的某个地方,这个故障数字一定是计算出来的……有没有办法为用户打印出来?