我对JUnit测试和Mockito框架非常陌生,我有一个用例,我想测试一个方法,该方法在内部调用我需要测试的同一类的重载方法。我已经为第一个方法编写了单元测试,希望跳过内部的第二个方法调用。下面是代码片段。
需要测试的类-
测试班-
如果您直接在这里提供代码片段,而不是在某个地方上传屏幕截图,通常会有所帮助。
这不是对你问题的直接回答,但是。。。。我想理解为什么要避免调用真正的重载方法?我的意思是,如果代码是在生产环境中执行的,那么该方法将被调用。测试不应该确保生产中所需的行为发生吗?
或者该方法是否做了一些非常特殊的事情(比如调用另一个系统),需要一个非常特殊的测试环境?如果是这样的话,我不禁想知道,嘲笑所谓的行为是否会更好。
总之,如果你能多分享一些背景知识,并解释一下你这样做的原因,那就太好了。:)
问题内容: 我有一个名为Java的Java类,我想用JUnit进行测试。我要测试的公共方法调用同一类中的私有方法,以确定要遵循的条件路径。我的目标是为中的不同路径编写JUnit测试。另外,调用服务,因此我不希望在运行JUnit测试时实际执行该服务。 模拟和控制其返回值以便我可以测试“ methodA”的不同路径的最佳方法是什么? 我更喜欢在编写模拟时使用JMockit,因此我对适用于JMockit
问题内容: 我正在为具有两个方法methodA,methodB的类编写JUnit测试用例。我想在测试用例中模拟对methodA的methodB调用,我正在对正在测试的类使用间谍,但仍然执行methodB。 这是课程 这是测试课 尽管我已对其进行了模拟,但方法B仍会得到调用。请向我建议一个使用正确方法模拟同一类methodA的methodB调用的解决方案。 问题答案: 我昨天碰到这个,因为间谍最好做
在我的代码中,我有时在同一个类中调用public或private方法。这些方法并不是一个很好的候选方法,不适合被拉入自己的类中。我调用的每个方法都在它们自己的单元测试中进行测试。 那么,如果我的类a中有一个方法也在类a中调用这些方法中的每一个,有没有办法模拟这些调用?我当然可以剪切和粘贴我的期望/模拟行为,但这不仅是一件乏味的事情,它混淆了测试的要点,违反了模块化,并且由于无法控制返回的内容,使测
在我的代码中,我有时在同一个类中调用公共或私有方法。这些方法不适合被拉到自己的类中。我调用的这些方法中的每一个都是在它们自己的单元测试中进行测试的。 那么,如果我的类a中有一个方法,它也调用类a中的每个方法,那么有什么方法可以模拟这些调用吗?我当然可以剪切和粘贴我的期望/模拟行为,但这不仅是乏味的,它混淆了测试的重点,违反了模块化,并且由于无法控制返回的内容而使测试更加困难。 如果不是,这种事情通
对于Mockito和其他测试框架,通常有方法在测试类中模拟方法的功能。我似乎无法让ScalaMock接受同样的方式。 在测试课上,我是: 我知道,如果你嘲笑/剔除类,然后在真实实例上调用相同的功能,这是行不通的。但是有一些变通方法,可以使用模拟调用等。 如果这是错误的方法,测试在同一个测试类中使用其他方法的方法的最佳方法是什么?我认为解耦方法是最好的实践。 谢谢
redis-cli -p 6379 DEBUG sleep 30