Articles of mockito

Como zombar de uma class singleton enum usando Mockito / Powermock?

Não tenho certeza de como zombar de uma aula de enum singleton. public enum SingletonObject{ INSTANCE; private int num; protected setNum(int num) { this.num = num; } public int getNum() { return num; } Eu gostaria de stub getNum () no exemplo acima, mas não consigo descobrir como zombar da class SingletonObject real. Eu pensei […]

É possível usar Mockito em Kotlin?

O problema que estou enfrentando é que Matchers.anyObject() retorna null . Quando usado para simular o método que aceita apenas tipos não anuláveis, ele gera uma exceção “Não deve ser nula”. `when`(mockedBackend.login(anyObject())).thenAnswer { invocationOnMock -> someResponse } Mocked method: public open fun login(userCredentials: UserCredentials): Response

mock ou stub para chamada encadeada

protected int parseExpire(CacheContext ctx) throws AttributeDefineException { Method targetMethod = ctx.getTargetMethod(); CacheEnable cacheEnable = targetMethod.getAnnotation(CacheEnable.class); ExpireExpr cacheExpire = targetMethod.getAnnotation(ExpireExpr.class); // check for duplicate setting if (cacheEnable.expire() != CacheAttribute.DO_NOT_EXPIRE && cacheExpire != null) { throw new AttributeDefineException(“expire are defined both in @CacheEnable and @ExpireExpr”); } // expire time defined in @CacheEnable or @ExpireExpr return cacheEnable.expire() != […]

Mock um construtor com parâmetro

Eu tenho uma aula como abaixo: public class A { public A(String test) { bla bla bla } public String check() { bla bla bla } } A lógica no construtor A(String test) e check() são as coisas que estou tentando imitar. Eu quero todas as chamadas como: new A($$$any string$$$).check() retorna uma string fictícia […]

Como usar ArgumentCaptor para stubbing?

Na documentação do Mockito e javadocs diz Recomenda-se usar o ArgumentCaptor com verificação, mas não com stub. mas eu não entendo como o ArgumentCaptor pode ser usado para stubbing. Alguém pode explicar a declaração acima e mostrar como o ArgumentCaptor pode ser usado para o stub ou fornecer um link que mostre como isso pode […]

throw checked Exceções de zombarias com Mockito

Eu estou tentando fazer com que um dos meus objects ridicularizados lance uma exceção marcada quando um determinado método é chamado. Estou tentando o seguinte. @Test(expectedExceptions = SomeException.class) public void throwCheckedException() { List list = mock(List.class); when(list.get(0)).thenThrow(new SomeException()); String test = list.get(0); } public class SomeException extends Exception { } No entanto, isso produz o […]

Testes de unidade dependentes do tempo

Eu preciso testar uma function cujo resultado dependerá do tempo atual (usando o isBeforeNow() Joda time). public boolean isAvailable() { return (this.someDate.isBeforeNow()); } É possível omitir / omitir a hora do sistema com o Mockito para que eu possa testar a function de forma confiável?

Testando método privado usando mockito

class pública A { public void method (boolean b) { if (b == true) Método 1(); outro method2 (); } private void method1 () {} private void method2 () {} } class pública TestA { @Teste public void testMethod () { Um a = mock (A.class); a.method (true); // como testar como verificar (a) .method1 […]

Usando PowerMockito.whenNew () não está sendo ridicularizado e método original é chamado

Eu tenho um código como este abaixo: Class A { public boolean myMethod(someargs) { MyQueryClass query = new MyQueryClass(); Long id = query.getNextId(); // some more code } } Class MyQueryClass { …. public Long getNextId() { //lot of DB code, execute some DB query return id; } } Agora estou escrevendo um teste para […]

Mockito: Tentando espionar o método está chamando o método original

Estou usando o Mockito 1.9.0. Eu quero zombar do comportamento de um único método de uma class em um teste JUnit, então eu tenho final MyClass myClassSpy = Mockito.spy(myInstance); Mockito.when(myClassSpy.method1()).thenReturn(myResults); O problema é que, na segunda linha, myClassSpy.method1() está sendo chamado, resultando em uma exceção. A única razão pela qual estou usando mocks é para […]