java - 如何编写单元测试?

标签 java unit-testing

我有一个 Java 类。我怎么能unit test是吗?


在我的例子中,我有一个类进行二进制求和。它需要两个 byte[] 数组,对它们求和,然后返回一个新的二进制数组。

最佳答案

  1. 用正确的输入定义正常情况下的预期和期望输出。

  2. 现在,通过声明一个类来实现测试,将其命名为任何名称(通常类似于 TestAddingModule),然后向其添加 testAdd 方法(即如下所示):

    • 编写一个方法,并在其上方添加@Test 注解。
    • 在该方法中,运行二进制求和和 assertEquals(expectedVal,calculatedVal)
    • 通过运行它来测试你的方法(在 Eclipse 中,右键单击,选择 Run as → JUnit test)。

      //for normal addition 
      @Test
      public void testAdd1Plus1() 
      {
          int x  = 1 ; int y = 1;
          assertEquals(2, myClass.add(x,y));
      }
      
  3. 根据需要添加其他案例。

    • 测试您的二进制和在整数溢出时不会引发意外异常。
    • 测试您的方法是否能够优雅地处理 Null 输入(示例如下)。

      //if you are using 0 as default for null, make sure your class works in that case.
      @Test
      public void testAdd1Plus1() 
      {
          int y = 1;
          assertEquals(0, myClass.add(null,y));
      }
      

关于java - 如何编写单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8751553/

相关文章:

java - 无法在eclipse中设置glassfish服务器运行环境

java - Java打印函数输出说明

java - 为什么Java中的实例变量总是私有(private)的?

java - JUnit 测试方法的参数化替代方案

node.js - 在 Node Express 服务器上测试远程 IP 地址行为

java - JMS。在 WildFly 12 中向 ActiveMQ 中的主题发送简单的主题消息失败

java - 根据多个键对 map 列表进行排序

ios - swift4 中 Core Data 的单元测试用例

unit-testing - 配置Polymer Web组件测试器以使用Selenium Grid服务器

c# - 使用模拟 Controller 上下文来测试 Controller