我有一个简单的用例,在这个用例中,我需要通过spring创建一个模拟对象。(我知道有更好的选择,如@Mock)。
我需要模拟的类说,ClassToMock是这样的:
public classToMock {
public ClassToMock (String a, String b, int c)
...
}
//other methods omitted
}
在我的春豆里我有:
<bean id="xyz" class="org.mockito.Mockito" factory-method="mock">
&
我如何用Mockito模拟我正在测试的类中的其他类?
例如:
MyClass.java
class MyClass {
public boolean performAnything() {
AnythingPerformerClass clazz = new AnythingPerformerClass();
return clazz.doSomething();
}
}
AnythingPerformerClass.java
class AnythingPerformerClass {
public boolean do
如何在中获得构造函数注入
我有以下课程:
class A {
private B mB;
A(B b) {
mB = b;
}
void String someMethod() {
mB.execute();
}
}
如何使用模拟类A和类B使用
B b = Mockito.mock(B.class)
Mockito.when(b.execute()).thenReturn("String")
A a = Mockito.mock(A.class)
//somehow inject b into A and make the belo
我试图使用JUnit和Mockito来模拟端到端的方法(addSomething方法)。很明显,在这个方法中,我使用了其他方法。我的怀疑是:
为了模拟端到端的方法,我也需要模拟其他方法,对吗?
如何模拟addSomething方法中的方法?
我想要的一个简单例子是:
方法A
public int summing(int sum){
int A = 5;
int B = 23;
sum = SumOfIntegers(A,B);
return sum;
}
方法B
private int SumOfIntegers(int number1, int number2){
我是莫奇托测试用例的新手。我想模拟控制器,它有下面列出的非常简单的服务。我的模拟测试类有一个错误,错误的属性传递给mockito,下面是我的错误
@RunWith(MockitoJUnitRunner.class)
public class CreditCardControllerTest {
@Mock
private CreditCardService creditCardService;
@Mock
Model model;
Person p;
@Mock
CreditCard creditCard ;
@InjectMoc
我对Mockito非常陌生,我遇到了一个无法解决的问题。我想用Mockito测试一种方法。问题是,在这个方法中,有一个创建的对象,而这个对象有一个函数,我想要模拟它。
例如,这里有一个小示例代码,它说明了我的问题:
public class ClassA {
public functionDoingDBStuff() {
//...........
}
}
public class ClassB {
final ClassA classAObj = null;
public functionXYZ() {
classAObj
我使用JUnit4和Mockito进行单元测试。
情况如下:
我有一个需要测试的函数,而在这个函数中包含一个网络请求,现在我想模拟网络请求结果。
void func(String param1, String param2){
//there would be some validations for the params
//...
//then network request, here I want to mock the result
String result = NetUtils.reqNetwork(param1, param2);
/
我正在测试一个Spring服务,我想使用模拟会话来创建,这样我就不必连接到实际的数据库。
不幸的是:
org.mockito.exceptions.misusing.MissingMethodInvocationException:
when() requires an argument which has to be 'a method call on a mock'.
TweetServiceTest.java
Session session;
TweetService tweetService = new TweetServiceImpl();
@Before
pub
我正在使用JUnitParams和Mockito编写一个测试类。我想使用Mockito mock作为parameter。在我的测试中,我有大约10个模拟,我只想通过一个模拟来定义它的特殊行为。
我用一个简单的例子再现了这个问题。
我的问题是:我在方法myList中初始化变量parametersForTest,但是当我调试到test方法时,myList是null,但是param是我想要的模拟。
@RunWith(JUnitParamsRunner.class)
public class MockitoJUnitParamsTest {
private List myList;
我需要在Java中测试一个抽象类,并且我有一个依赖于equals()的方法来提供结果。
public abstract class BaseClass<T extends BaseClass<T>> {
public boolean isCanonical() {
return toCanonical() == this;
}
public T toCanonical() {
T asCanonical = asCanonical();
if (equals(asCanonical)) {
我正在为我的java类编写测试类。我正在使用Junit5和Mockito。
我使用的是Junit5,它与Power Mockito不兼容,所以我只使用Mockito。
我有class Emp,它有如下的findSalary函数,EmpProfileClient是在构造函数中初始化的。
Class Emp {
......
public void findSalary(empId) {
...
TaxReturn taxReturn = new TaxReturn(EmpProfileClient);
int value = taxReturn.apply(
我正在用Mockito测试我的代码,我使用了:
RequestWrapper requestWrapper = mock(RequestWrapper.class);
我认为它是在模仿requestWrapper instance of RequestWrapper.class。
相反,在测试的系统的代码中,调试如下:
RequestWrapper a = new RequestWrapper(request);
RequestWrapper b = new RequestWrapper(request);
RequestWrapper c = new RequestWrapper(reque
例如,有一个A类,它有两个方法methodUnderTest()和display(),其中methodUnderTest调用了display方法。在使用mockito编写junit时,我如何模拟display()方法?
class A{
public int method methodUnderTest{
//some code
display();
}
public int display(){
//some code
}
}
代码如下:
public class Customer
{
@Autowired
private Person person;
//some business logic using person object
}
现在我需要为Customer类编写jUnit测试用例,该怎么做呢?我是否应该使用Mockito模拟person对象,然后执行业务逻辑?如果是,如何将模拟的person对象设置为Customer的属性,而不使用任何setter/getter?
谢谢!
在这里我试图窥探一个方法,因为它的外部调用了另一个方法。我所需要的就是模拟外部方法。下面是我对我的项目类型的遗留项目的模拟
public class TestClass {
public int dependencyOne(){
System.out.println("Need to mock Externally ");
return 100;
}
public int methodNeedTobeTested(int a){
int c = new AnotherClass().dependencyT
在嘲弄之后,我得到了空指针异常。请找到我的项目结构。
//this is the pet interface
public interface Pet{
}
// An implementation of Pet
public class Dog extends Pet{
int id,
int petName;
}
// This is the Service Interface
public interface PetService {
List<Pet> lis
我试图理解mockito,但我被困住了,我试图使用@Mock注释来模拟多个对象,但它不会嘲笑它们。它只会模拟第一个对象(mockBoard)。如果我自己使用模拟(Boardfactory.class)来模拟这个Boardfactory.class,它就会工作。但我不明白为什么它在@Mock中不起作用?
@ExtendWith(MockitoExtension.class)
class MapParserTest {
//mocks just fine
@Mock private Board mockBoard;
//wont mock both factories, sets them t
我们有一个ServletFilter,我们想用Spock进行单元测试,并检查对HttpServletRequest的调用。
下面的代码抛出java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstract in class file javax/servlet/http/Cookie
def "some meaningless test"(){
given:
HttpServletRequest servletRequest = Mock(Http