[JUnit] Assumption and assertAll
Assumption:
Run the testing code only if when the condition is match, otherwise, test will be ignored
@Test
void runTestIf() {
System.out.print("Current hour: " + gc.get(Calendar.HOUR_OF_DAY));
// if not match the asumption, test will be ignored
Assumptions.assumeTrue(gc.get(Calendar.HOUR_OF_DAY) < 20);
// following code will be executed only when Assumption match
firstEmployee.adjustSalary(5000);
assertEquals(85000, firstEmployee.getSalary());
}
@Test
void runOnlyTestDefined() {
System.out.print("Current hour: " + gc.get(Calendar.HOUR_OF_DAY));
Assumptions.assumingThat(gc.get(Calendar.HOUR_OF_DAY) < 20, () -> {
// only this part of code will be run if assumption is true
assertEquals(85000, firstEmployee.getSalary());
});
System.out.print("After the invocation of assumingTaht will still be excuated no matter what");
}
assertAll:
Check all condiiton in test:
@Test
void checkEmployee() {
firstEmployee.adjustSalary(4000.0);
assertAll(
() -> assertEquals(84000, firstEmployee.getSalary()),
() -> assertNotNull(firstEmployee.getFirstName()),
() -> assertThrows(NamingException.class, () -> {firstEmployee.validateLastName();})
);
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2021-08-04 [SAA + SAP] 19. Database & Redshfit
2021-08-04 [SAA + SAP] 18. Architecture Discussions - 1
2020-08-04 [AWS] Build an App with AWS CDK
2019-08-04 [React Native] Up & Running with React Native & TypeScript
2019-08-04 [React] Create a Query Parameter Modal Route with React Router
2018-08-04 [JavaEE] Implement a test for REST endpoint
2018-08-04 [JavaEE] Implement a REST Endpoint