当前位置: 首页 > 知识库问答 >
问题:

AssertJ动态检查Optinal是否为空或存在

田英卓
2023-03-14

我正在使用AssertJ的OptionalAssert类,我需要实现一个JUnitParameterizedTest,它将以动态方式检查可选实例的存在性或空性:

@ParameterizedTest
@ValueSource(/* values */)
void test_presence(Optional<String> opt, boolean empty) {
    assertThat(opt) // -> .isPresent() / .isEmpty();
}

在非参数测试中,我将使用.ispresent().isempty()方法来执行检查,但在本例中,我希望应用类似于.ispresent(true/false)的内容。

我在JavaDoc中找不到这样的方法,所以我想知道是否有替代方法(或者我应该只处理if/else?)

共有1个答案

干善
2023-03-14

可以改用布尔断言

assertThat(opt.isEmpty()).isEqualTo(empty)
 类似资料:
  • 当页面第一次加载时,我需要检查中是否有图像,并加载最后一个图像。 否则,我禁用预览按钮,提醒用户按下新图像按钮,并创建一个空数组来放置图像; 问题是中的

  • 我想检查DateTime字段是否不是空的\null字符串。如果datetime字段不为空,则我将执行一些操作。 这是我的错误消息: 我能做些什么来检查一个字段是否不是字符串,而是对象?

  • 在下面的代码中,我需要检查版本字符串是否为空,然后将其值附加到请求变量。 如何检查不在if条件下?

  • 问题内容: 我试图弄清楚如何检查一个字段是否为空或为空。我有这个 我需要添加额外的支票,例如 任何想法如何做到这一点? 问题答案: 无论使用 要么 如果只想检查而不是空字符串,则也可以使用或。但这不适用于空字符串。

  • 问题内容: 所以我知道这是一个很普遍的问题,已经找到了解决方案。但是,当我尝试这样做时,它无法正常工作。 我的JTextField为空,并且未启用该按钮。当我在文本字段中写入内容时,该按钮未启用。 因此,我的程序应每秒检查一次此字段是否为空。只要有人在文本字段中写入内容,就应启用该按钮。^^ 问题答案: 为此,您需要在中添加更改侦听器(一个响应文本更改的侦听器),并且在内,您需要根据是否为空将其更