java - JUnit 设置测试用例

标签 java junit

我以前从未使用过 JUnit,并且在设置测试时遇到一些问题。我有一个 Java 项目和一个包,都名为“Project1”,其中有一个我试图测试的类,名为“Module”。目前我只是想检查这些值是否正确。

模块类

package Project1;
//This class represents a module
public class Module {

      public final static int MSC_MODULE_PASS_MARK = 50;
      public final static int UG_MODULE_PASS_MARK = 40;
      public final static int MSC_MODULE_LEVEL = 7;
      public final static int STAGE_3_MODULE_LEVEL = 6;

      private String moduleCode;
      private String moduleTitle;
      private int sem1Credits;
      private int sem2Credits;
      private  int sem3Credits;
      private  int moduleLevel;


      public Module(String code, String title, int sem1, int sem2, int sem3, int level)
      {

          moduleCode = code;
          moduleTitle = title;
          sem1Credits = sem1;
          sem2Credits = sem2;
          sem3Credits = sem3;
          moduleLevel = level;

      }

      //method to return the module code
      public String getCode()
      {

          return moduleCode;

      }
      //INSERT A BUNCH OF GET METHODS

}

测试用例

这就是我迷路的地方。我试图提供一些虚拟值来测试,但我不确定如何传递 Module 实例来测试。

package Project1;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;


public class TestCase {
    @BeforeClass
    public static void setUpBeforeClass() throws Exception {


    }

    @Before
    public void setUp() throws Exception {
        Module csc8001 = new Module("CSC8001", "Programming and data structures", 20, 0, 0, 7);

    }
    @Test
    public void test() {
        if (csc8001.getCode() == "CSC8001") {
            System.out.println("Correct");
        }
        else{
            fail("Not yet implemented");
        }
    }

}

最佳答案

使您的 Module 变量成为测试类中的实例变量,而不是方法中的局部变量。然后@Before方法将只初始化变量,而不声明它。那么它将在任何 @Test 方法的范围内。

顺便说一下,compare your string contents with String's equals method, not == .

关于java - JUnit 设置测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22695408/

相关文章:

java - 如何从 jUnit 测试启动 Maven 过滤?

java - JodReports 替代品

java - 我们是否需要将接口(interface)方法声明为抽象的

java - 获取类类型为特定类

java - 通过套接字发送对象java

android - Mockito vs 类的测试实现

java - 参数化单元测试套件

java - 从 Eclipse 运行 FitNesse 测试

java - Spring 框架 : Map - Value Referencing to another Map

java - 在 JUnit 测试中使用事务注释时数据未保存在数据库中