eclipse 直接右键工程new 看不到JUnit的情况以及JUnit的作用、使用举例和JUnit的注意事项
1,eclipse 直接右键工程new 看不到JUnit的情况
解决:右键工程-》new-》Other-》Java-》JUnit
小细节
测试案例(包含运行结果):
2,JUnit的作用:在单元测试活动中,测试方法是否可以正常执行
①可能:项目组都会有要求必须掌握的:因为在团队开发中,提交未经单元测试的代码,可能会引起灾难.
②交报告):请问下,JUnit单元测试有什么用??
你自己测试只是意思一下而已,不够正规用JUnit测试会有测试案例和测试结果,方便给领导汇报工作作为依据而且听说有的公司先写测试案例,后实现功能,这种情况下就必须要用了。
③:在功能拓展,需求更改频繁,方法复用高的情况下也可以适用,成千上万个接口中使用JUnit。
其中:成千上万个方法使用JUnit 测试,利用的是 JUnit内部的断言机制,(调用 JUnit 内部的assertEqual 方法)检测我们预期的结果和实际的结果是否一致,从而得知方法是否正确。
assertEquals是一个断言的规则,里面有两个参数,第一个参数表明我们预期的值,第二个参数表示实际运行的值。(assertEquals:预期与实际是否匹配)
使用JUnit时,接口预期与实际不匹配时,执行时结果是×,匹配时结果是√
3,使用JUnit测试方法时注意事项:
(1) 测试的方法上必须要有注解@Test
(2) 测试方法不能带参数,且只能使用public void 修饰
(3) @Test的两个参数用不上expected 和 timeout 的原因:版本原因:这个两个参数是JUnit4的哈
4,代码举例:
❀ AlgorithmDesign 类:
package BiscuitsDemo;
public class AlgorithmDesign {
public double add(double a,double b) {
return a + b;
}
public double reduce(double a,double b) {
return a - b;
}
public double multiplication(double a, double b) {
return a * b;
}
public double division(double a, double b) {
return a / b;
}
}
❀ TestUnit 类
package BiscuitsDemo;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.Rule;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.rules.ExpectedException;
class TestUnit {
void setUp() throws Exception {
System.out.println("setUp");
}
void tearDown() throws Exception {
System.out.println("after");
}
@Test
public void testAdd() {
assertEquals(10, new AlgorithmDesign().add(5, 5));
}
@Test
public void testReduce() {
assertEquals(3, new AlgorithmDesign().reduce(7, 4));
}
@Test
public void testMultiply() {
assertEquals(100, new AlgorithmDesign().multiplication(10, 10));
}
@Test
public void testDevision() {
assertEquals(0, new AlgorithmDesign().division(8, 0));
}
}
作者:一乐乐