如何编写单元测试?

新手上路,请多包涵

我有一个Java类。我怎样才能对它进行 单元测试


在我的情况下,我有类做一个二进制和。它需要两个 byte[] 数组,对它们求和,然后返回一个新的二进制数组。

原文由 Tsundoku 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 392
1 个回答

我为 IntelliJEclipse 提供这篇文章。

蚀:

要为您的项目进行单元测试,请按照以下步骤操作(我正在使用 Eclipse 来编写此测试):

1- 单击新建 -> Java 项目。

创建项目

2- 写下您的项目名称,然后单击完成。

创建项目

3-右键单击您的项目。然后,单击新建 -> 类。

创建类

4-写下你的班级名称,然后点击完成。

创建类

然后,像这样完成课程:

 public class Math {
    int a, b;
    Math(int a, int b) {
        this.a = a;
        this.b = b;
    }
    public int add() {
        return a + b;
    }
}

5- 单击文件 -> 新建 -> JUnit 测试用例。

创建 JUnite 测试

6- 检查 setUp() 并单击完成。 SetUp() 将是您初始化测试的地方。

检查设置()

7- 单击确定。

添加 JUnit

8- 在这里,我只是将 7 和 10 相加。所以,我希望答案是 17。像这样完成你的测试课:

 import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
public class MathTest {
    Math math;
    @Before
    public void setUp() throws Exception {
        math = new Math(7, 10);
    }
    @Test
    public void testAdd() {
        Assert.assertEquals(17, math.add());
    }
}

9- 在包资源管理器中单击您的测试类,然后单击运行方式 -> JUnit 测试。

运行 JUnit 测试

10- 这是测试的结果。

测试结果

IntelliJ: 请注意,我使用 IntelliJ IDEA community 2020.1 作为屏幕截图。此外,您需要在执行这些步骤之前设置您的 jre。我正在使用 JDK 11.0.4。

1-右键单击项目的主文件夹->新建->目录。你应该称之为“测试”。 在此处输入图像描述 2- 右键单击测试文件夹并创建适当的包。我建议创建与原始类相同的包装名称。然后,右键单击测试目录 -> 将目录标记为 -> 测试源根目录。 在此处输入图像描述 3-在测试目录的正确包中,您需要创建一个Java类(我建议使用Test.java)。 在此处输入图像描述 4- 在创建的类中,键入“@Test”。然后,在 IntelliJ 为您提供的选项中,选择将“JUnitx”添加到类路径。 在此处输入图像描述在此处输入图像描述 5- 在测试类中编写测试方法。方法签名如下:

 @Test
public void test<name of original method>(){
...
}

你可以像下面这样做你的断言:

 Assertions.assertTrue(f.flipEquiv(node1_1, node2_1));

这些是我添加的导入:

 import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

在此处输入图像描述

这是我写的测试: 在此处输入图像描述

您可以像下面这样检查您的方法:

 Assertions.assertEquals(<Expected>,<actual>);
Assertions.assertTrue(<actual>);
...

要运行单元测试,请右键单击测试并单击运行。 在此处输入图像描述

如果您的测试通过,结果将如下所示: 在此处输入图像描述

原文由 Mohammad 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题