gpt4 book ai didi

需要 Java JUnit 测试指南

转载 作者:行者123 更新时间:2023-11-28 21:17:12 24 4
gpt4 key购买 nike

我正在尝试为我的程序运行创建一些测试。我对 Java 和整个编程还是陌生的,所以我不确定该怎么做。我有一个 .csv 文件,我们只称它为 testdata.csv,我想在该测试文件中查找某些单词以进行测试。因此,例如一个测试可以显示该文件中的多个字符串并说它们在那里。

我尝试过使用 assert.that,但它对我不起作用,我可能做错了。只是在网上搜索并试图将事情拼凑在一起。我包含的代码是我最后一次尝试,我知道这是不对的...


@org.junit.Test
public void testAssets (){

String fileName;

fileName = "testdata.csv";

Assert.that(fileName, hasItems);

如果没有字符串“UDP,TCP,ICMP”则测试失败

最佳答案

单元测试是关于单独测试您的代码,以确保一个或多个单元按预期运行。在上面的例子中,您想测试对从文件(或其他任何地方)读取的 String 进行操作的逻辑是否会检测到它要检测的内容。

假设您有一个方法:

public boolean isAMatch(String input)
{
return (input.contains("UDP") || input.contains("TCP") || input.contains("ICMP"))
}

您对该方法或单元代码的测试应如下所示:

private void testIsAMatch()
{
Assert.assertTrue(isAMatch("This String contains UDP."));
Assert.assertTrue(isAMatch("This String contains TCP."));
Assert.assertTrue(isAMatch("This String contains ICMP."));
Assert.assertFalse(isAMatch("This String does not match."));
}

单元测试背后的想法是测试代码是否独立于外部源(例如文件、数据库连接、网站等)工作。如果文件被编辑或删除怎么办?你怎么知道你的失败在哪里?单元测试旨在快速告诉您代码更改是否导致您的逻辑中断。通过这种方式,您可以将 .csv 文件解析为一个大字符串或更小的字符串,或者将该输入传递给您的 isAMatch() 方法。如果它返回 false 但您的单元测试通过,并且假设您正在正确读取文件,那么您可以放心该文件不包含您要查找的匹配项。

关于需要 Java JUnit 测试指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55938804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com