Livro de receitas das coleções de Hamcrest

Livro de receitas das coleções de Hamcrest

1. Introdução

Este livro de receitas ilustra comomake use of Hamcrest matchers to work with and test collections.

Oformat of the cookbook is example focusede prático - sem detalhes estranhos e explicações necessárias.

Primeiro, vamos fazer uma importação estática rápida para cobrir a maioria das APIs de utilitário que vamos usar a seguir:

import static org.hamcrest.Matchers.*;

Leitura adicional:

Hamcrest Common Core Matchers

Explore os diferentes métodos da classe CoreMatchers na biblioteca Hamcrest.

Read more

Hamcrest Bean Matchers

Aprenda sobre os correspondentes de feijão Hamcrest - uma ferramenta que fornece uma maneira eficaz de fazer afirmações, um recurso frequentemente usado ao escrever testes de unidade.

Read more

Testando com Hamcrest

Neste tutorial muito prático, vamos nos concentrar no uso da API Hamcrest e na criação de testes de unidade mais simples e intuitivos para o nosso software.

Read more

2. The Cookbook

verifique se um único elemento está em uma coleção

List collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, hasItem("cd"));
assertThat(collection, not(hasItem("zz")));

verifique se vários elementos estão em uma coleção

List collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, hasItems("cd", "ef"));

* verifique todos os elementos de uma coleção *

- com ordem estrita

List collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, contains("ab", "cd", "ef"));

- com qualquer pedido

List collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, containsInAnyOrder("cd", "ab", "ef"));

verifique se a coleção está vazia

List collection = Lists.newArrayList();
assertThat(collection, empty());

verifique se a matriz está vazia

String[] array = new String[] { "ab" };
assertThat(array, not(emptyArray()));

verifique se o mapa está vazio

Map collection = Maps.newHashMap();
assertThat(collection, equalTo(Collections.EMPTY_MAP));

verifique se Iterable está vazio

Iterable collection = Lists.newArrayList();
assertThat(collection, emptyIterable());

verifique o tamanho de uma coleção

List collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, hasSize(3));

verificando o tamanho de um iterável

Iterable collection = Lists.newArrayList("ab", "cd", "ef");
assertThat(collection, Matchers. iterableWithSize(3));

verifique a condição de cada item

List collection = Lists.newArrayList(15, 20, 25, 30);
assertThat(collection, everyItem(greaterThan(10)));

3. Conclusão

Este formato é um experimento - estou publicando alguns dos meus livros de receitas de desenvolvimento interno sobre um determinado tópico -Google Guavae agora Hamcrest. O objetivo é ter essas informações prontamente disponíveis on-line - e adicioná-las sempre que encontrar um novo exemplo útil.

A implementação de todos esses exemplos e trechos de códigocan be found over on GitHub - este é um projeto baseado em Maven, portanto, deve ser fácil de importar e executar como está.