Estratégia de testes
Entenda Estratégia de testes desde os fundamentos até os critérios de decisão da prática profissional.
QUALITY · 18 ARTICLES
Entenda Testes e qualidade de código desde os fundamentos até os critérios de decisão da prática profissional.
Mapa do tópico
Entenda Estratégia de testes desde os fundamentos até os critérios de decisão da prática profissional.
Entenda TDD e dublês de teste desde os fundamentos até os critérios de decisão da prática profissional.
Entenda Code smells desde os fundamentos até os critérios de decisão da prática profissional.
Entenda Refatoração desde os fundamentos até os critérios de decisão da prática profissional.
Comece aqui
Um caminho dos fundamentos ao próximo passo.
Ao desenvolver para iOS, você acaba adiando aquele código de teste que precisa escrever. E, quando abre o XCTest, não sabe por onde começar.
Ler artigo“Escrever os testes primeiro? Ainda nem existe código—o que eu testaria?”
Ler artigoCódigo espaguete não se refere ao tamanho ou à sujeira, mas ao fluxo de controle. Partindo da carta de Dijkstra contra goto, de 1968, resumimos por que o espaguete permaneceu mesmo depois que goto desapareceu e como medi-lo com complexidade ciclomática.
Ler artigoTodos os artigos
Shotgun Surgery é um smell em que uma mudança se espalha por vários arquivos, enquanto Divergent Change é sua imagem espelhada: um arquivo muda por vários motivos. Este artigo explica como medir e distinguir esses dois smells opostos usando o histórico de commits.
Ler artigoUm God Object é uma classe que cresce absorvendo responsabilidades e dados ao redor. É o arquivo que mais muda e mais entra em conflito na equipe. Aqui estão as principais señales de crescimento, a ordem de desmontagem e duas formas de falhar ao dividi-lo.
Ler artigoCódigo ravioli é aquele em que todas as funções têm cinco linhas e uma responsabilidade, mas ninguém consegue explicar o que acontece ao clicar em um botão. Reunimos os motivos da fragmentação excessiva, o custo revelado pela quantidade de saltos e como recuperar o fluxo.
Ler artigoCódigo lasanha é aquele em que adicionar um campo exige alterar sete arquivos, mesmo com as camadas bem separadas. Este texto resume por que as camadas aumentam, onde o custo aparece e quando mantê-las ou removê-las.
Ler artigoPlanos de teste gerenciam, em arquivos .xctestplan, os testes a executar e suas condições. Este artigo resume por que a configuração do scheme não basta, seleção de alvos, configurações, cobertura, ordem, repetição e integração com xcodebuild.
Ler artigo100% de cobertura de código não significa código sem bugs. Este artigo resume a referência prática de 70–80% e como identificar ramificações não verificadas que importam mais do que o número.
Ler artigoNo código legado, testes de caracterização que fixam o comportamento atual vêm antes da refatoração. Este guia organiza o procedimento prático para isolar, com seams, o código que não pode ser testado por causa de dependências.
Ler artigoNo Swift 5.5 ou posterior, declare as funções de teste como async, aguarde o resultado com await e depois faça a validação. Este guia também aborda validação de erros, testes de APIs antigas baseadas em callback e os casos em que ainda é necessário usar expectation.
Ler artigoAo escrever código de testes no desenvolvimento para iOS, chega um momento em que o XCTest começa a parecer limitado.
Ler artigoVocê já escreveu um monte de código de teste, mas não conseguiu encontrar os bugs de verdade e viu os testes quebrarem aos montes sempre que corrigia uma funcionalidade?
Ler artigoAo estudar desenvolvimento, há um obstáculo inevitável.
Ler artigoAo escrever código de teste, há um obstáculo inevitável.
Ler artigo