Junit单元测试实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二Junit单元测试实验报告
实验内容:利用Junit对实验程序Point2d.java进行单元测试
实验目的:掌握单元测试的方法,掌握在Eclipse里进行Junit测试的技术。
实验步骤和结果:
1、修改之前的Calculator的测试结果:
(1)自动生成的CalculatorTest类代码:
package andycpp;
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) {
result = result / 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;
}
}
(2)运行结果:
自动生存的测试类
完善测试类后的运行结果
2、修改和完善Calculator类:
package andycpp;
public class Calculator {
private static int result; // 静态变量,用于存储运行结果
public void add(int n) {
result = result + n;
}
public void substract(int n) {
result = result - n; //Bug: 正确的应该是 result =result-n }
public void multiply(int n) {
result =result*n;
}
public void divide(int n) {
result = result / n;
}
public void square(int n) {
result = n * n;
}
public void squareRoot(int n) {
result=(int)Math.sqrt(n); //Bug : 死循环}
public void clear() { // 将结果清零
result = 0;
}
public int getResult() {
return result;
}
}
3、修改后的Calculator的测试用例:
(1)加法:操作数:2,、3;结果:5
(2)减法:操作数:10、2;结果:8
(3)乘法:操作数:10、2;结果:20
(4)除法:操作数:8、2;结果:4
(5)平方:操作数:3;结果:9
(6)开方:操作数:4;结果:2
代码:
package andycpp;
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
public class CalculatorTest {
private static Calculator calculator = new Calculator();
@Before
public void setUp() throws Exception {
calculator.clear();
}
@Test
public void testAdd() {
calculator.add(2);
calculator.add(3);
assertEquals(5, calculator.getResult());
}
@Test
public void testSubstract() {
calculator.add(10);
calculator.substract(2);
assertEquals(8, calculator.getResult());
}
@Test
public void testMultiply() {
calculator.add(10);
calculator.multiply(2);
assertEquals(20, calculator.getResult());
}
@Test
public void testDivide() {
calculator.add(8);
calculator.divide(2);
assertEquals(4, calculator.getResult());
}
@Test