环境准备:
安装eclipse:
- 下载windows 版本的 eclipse, 解压缩,双击打开eclipse.exe即可:https://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/2019-03/R/eclipse-jee-2019-03-R-win32-x86_64.zip
- 下载jdk-8u201-windows-x64.exe并双击安装:https://download.eclipse.org/oomph/jre/index-handler.php?vm=1_1_7_0_64_0&pn=Eclipse%20Installer&pu=http://wiki.eclipse.org/Eclipse_Installer&pi=http://download.eclipse.org/oomph/jre/128x128.png
- JDK 配置:Computer右键 --> Manage-->Advanced system settings-->Advanced-->Environment variables-->System variables;
配置JAVA_HOME:
配置CLASSPATH: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
配置系统环境变量PATH:增加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
验证JDK是否安装成功:首先打开命令提示符,用java,javac,java -version三个命令分别验证是否成功安装jdk
新建Java project,右键properties--》java build path ,添加library Junit。
新建calculator.java,右键创建Junit test case,勾选setUp()和tearDown(),下一步选择要测试的方法。
package test;
public class Calculator {
private static int result;
public void add(int n) {
result = result + n;
}
public void substract(int n) {
result = result - 1; // bug,应该是result = result - n;
}
public void multiply(int n) {
}
public void divide(int n) {
}
public void square(int n) {
result = n * n;
}
public void squareRoot(int n) {
for(;;); // bug 死循环
}
public void clear() {
result = 0;
}
public int getResult() {
return result;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
}
}
package test;
import static org.junit.Assert.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class CalculatorTest {
private static Calculator calculator = new Calculator();
@Before
public void setUp() throws Exception {
calculator.clear();
}
@After
public void tearDown() throws Exception {
//calculator.clear();
}
@Test
public void testAdd() {
calculator.add(2);
calculator.add(4);
assertEquals(6, calculator.getResult());
}
@Test
public void testSubstract() {
calculator.add(10);
calculator.substract(3);
assertEquals(7, calculator.getResult());
}
@Test
public void testMultiply() {
calculator.add(10);
calculator.multiply(2);
assertEquals(20, calculator.getResult());
}
@Test
public void testDivide() {
calculator.add(10);
calculator.divide(2);
assertEquals(5, calculator.getResult());
}
@Test
public void testSquare() {
calculator.square(3);
assertEquals(9, calculator.getResult());
}
@Test(timeout=1000)
public void testSquareRoot() {
calculator.squareRoot(16);
assertEquals(4, calculator.getResult());
}
@Test(expected = ArithmeticException.class)
public void divideByZero() {
calculator.divide(0);
}
}
测试用例写好之后,右键Run as--Junit 即可。