java – 自定义方法的JUnit测试用例
发布时间:2020-12-15 04:38:42 所属栏目:Java 来源:网络整理
导读:我正在学习我作为初级 Java开发人员的第一份工作面试,现在我正在努力学习JUnit测试用例.这是我遇到的一个例子,我必须说这对我来说真的很棘手(它是抽象代码所以我不知道如何测试它). public class JuiceMaker { public Juice makeJuice(final ListFruit fruit
我正在学习我作为初级
Java开发人员的第一份工作面试,现在我正在努力学习JUnit测试用例.这是我遇到的一个例子,我必须说这对我来说真的很棘手(它是抽象代码所以我不知道如何测试它).
public class JuiceMaker { public Juice makeJuice(final List<Fruit> fruits) throws RottenFruitException { for (final Fruit fruit : fruits) { if (FruitInspector.isFruitRotten(fruit)) { throw new RottenFruitException(fruit.getName() + “ is rotten. Cannot make juice.”); } } return Juicer.juice(fruits); } } 我设法创建自己的唯一例子是这一个: JuiceMaker jm = new JuiceMaker(); @Test public void isThrowingException() { //when try { jm.throwsRuntime(); Assert.fail("Expected exception to be thrown"); } catch (RottenFruitException e) { //then assertThat(e) .isInstanceOf(RottenFruitException.class) .hasMessage((fruit.getName() + " is rotten. Cannot make juice."); } } 我可以对这段代码执行哪些测试的提示?非常感谢你的帮助! 解决方法
欢迎来到JUnit,祝你的采访顺利!
首先要问的问题是这门课程提供的合同是什么?它需要一份水果清单,测试是否有任何水果腐烂,如果是这样会引发异常,否则它会榨汁.您可以假设“果汁”方法在其他地方进行了测试. 对我来说,这表明这些测试: >列出单一的好水果 您还可以测试null和无效值,但这可能是刚刚过度的事情. 一旦你决定要测试什么,那么你就可以开始考虑实现它们了.看起来你的实现有几个错误,但你正朝着一个好的方向前进.您可能会发现JUnit的“expected”参数对于测试异常非常有用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |