千家信息网

Java5中单元测试的使用方法

发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,本篇内容主要讲解"Java5中单元测试的使用方法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java5中单元测试的使用方法"吧!1、JUnit4使用Ja
千家信息网最后更新 2025年02月02日Java5中单元测试的使用方法

本篇内容主要讲解"Java5中单元测试的使用方法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java5中单元测试的使用方法"吧!

1、JUnit4使用Java5中的注解(annotation)
@Before:初始化方法 对于每一个测试方法都要执行一次(注意与BeforeClass区别,后者是对于所有方法执行一次)
@After:释放资源 对于每一个测试方法都要执行一次(注意与AfterClass区别,后者是对于所有方法执行一次)
@Test:测试方法,在这里可以测试期望异常和超时时间
@Test(expected=ArithmeticException.class)检查被测方法是否抛出ArithmeticException异常
@Ignore:忽略的测试方法
@BeforeClass:针对所有测试,只执行一次,且必须为static void
@AfterClass:针对所有测试,只执行一次,且必须为static void
一个JUnit4的单元测试用例执行顺序为:
@BeforeClass -> @Before -> @Test -> @After -> @AfterClass;
每一个测试方法的调用顺序为:

@Before -> @Test -> @After;

2、执行顺序
随机执行
@FixMethodOrder(MethodSorters.DEFAULT)
public class TestOrder
按testcase名称字符串顺序执行
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class TestOrder

3、代码注入Mock
JMokit中的@Mocked与@Injectable区别

public class CommonDaoTest {
@Mock
private MongoTemplate mongoTemplate; //注入mongdb mock类,不访问库
@InjectMocks //注入的目标类,要实现的test类
private CommonDao commonDao;

@Before
public void setUp() {
MockitoAnnotations.initMocks(this); //此处一定要记得加上,否则出错
}

@Test
public void dropCollectionName() {
doNothing().when(mongoTemplate).dropCollection("116");
commonDao.dropCollectionName("116"); //CommonDao实现了删除文档的功能
}
}

org.jmockit
jmockit
1.23
test

4、各种mock示例
when(systemConfigurationService.getConfiguration(eq(String.class), anyString())).thenReturn("(\\d+\\.*\\d*)");
when(objService.getKnowledgePointList(anyList())).thenReturn(objectiveKnowledges);

when(mongoTemplate.updateFirst(any(Query.class), any(Update.class), anyString())).thenReturn(mock(WriteResult.class));

when(mongoTemplate.collectionExists("111")).thenReturn(false);

when(configRepository.findByType(anyString())).thenReturn(mock(Config.class));

到此,相信大家对"Java5中单元测试的使用方法"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0