Código limpo JavaScript - Heurísticas de nome e teste

Foto de Shahzin Shajid no Unsplash

O código incorreto tem muitas características exclusivas. Neste artigo, veremos cada um e o que são. Olhamos para os odores de código mais gerais.

Neste artigo, veremos como nomear as coisas corretamente e como escrever um teste de alta cobertura e rápido.

Nomeação

Use nomes longos para escopos longos

Se o escopo for longo, o nome deve ser mais longo do que se eles estivessem em um escopo curto.

Variáveis ​​com nomes curtos perdem seu significado em longas distâncias.

Evite codificações

Os nomes não devem ser codificados com informações de escopo. Devemos evitar prefixos inúteis.

No entanto, os tipos de nomes podem ser úteis em JavaScript, pois as variáveis ​​e constantes têm tipos dinâmicos.

Os nomes devem descrever os efeitos colaterais

Se um trecho de código comete efeitos colaterais, o nome deve refleti-lo. Por exemplo, se tivermos a seguinte função:

let foo;
const getFoo = () => {
  if (!foo) {
    foo = {}
  }
  return foo
}

Em vez disso, devemos nomeá-lo setFooIfNotExistAndGetFoopara levar as duas ações em consideração.

Foto de FOTOGRAFIA .GES no Unsplash

Testes

Testes Insuficientes

Devemos ter certeza de que temos cobertura de teste suficiente para sabermos o código e as ramificações funcionam.

Além disso, nossos testes devem levar em consideração casos positivos e negativos.

Os casos de limite e limite também devem ter testes para casos de teste que podem quebrar nosso código.

Use uma ferramenta de cobertura

As ferramentas de cobertura de teste nos dizem para que temos testes e o que ainda precisa de cobertura de teste.

Eles também nos dizem quais ramificações do nosso código têm cobertura de teste.

Não pule testes triviais

Eles são fáceis de escrever e servem como boa documentação.

Um teste ignorado é uma questão sobre uma ambigüidade

Um teste ignorado é sempre questionável. Não sabemos por que eles foram ignorados, então deixamos claro o motivo pelo qual pulamos um teste.

Condições de limite de teste

Testar as condições de contorno é importante, uma vez que o código freqüentemente quebra em torno das condições de contorno.

Teste exaustivamente perto de bugs

Se um trecho de código tiver bugs, devemos testar mais esses casos.

Padrões de falhas são reveladores

Os padrões em que os casos de teste falham podem nos dizer muito sobre o que está quebrando nosso código.

Os casos que falham em dizer geralmente têm algum padrão, como quando falham com 5 ou mais caracteres passados ​​ou algo parecido.

Os testes devem ser rápidos

Testes lentos são uma tortura. Eles apenas são ignorados e não são executados. Devemos torná-los o mais rápido possível, especialmente porque haverá muitos deles.

Conclusão

Devemos nomear as coisas de uma forma inequívoca. Se houver efeitos colaterais, devemos descrevê-los.

Além disso, os testes devem cobrir bugs e casos-limite e devem ser executados rapidamente.

Podemos usar uma ferramenta de cobertura para ter uma ideia clara de quais partes do código são cobertas pelos testes.

Suggested posts

Encontrar informações sobre nomes de domínio

Um trecho de Small, Sharp Software Tools por Brian P. Hogan

Encontrar informações sobre nomes de domínio

Quando você faz uma solicitação para facebook.com, seu computador procura o nome de domínio para traduzir esse nome de domínio em um endereço IP para que seu computador possa fazer essa conexão.

Dicas para fazer a transição para a segurança cibernética sem conhecimento técnico.

Dicas para fazer a transição para a segurança cibernética sem conhecimento técnico.

Em 2022, fiz a transição de uma função não técnica para a segurança cibernética. Eu tive meu primeiro diploma em língua alemã, sei que você está chocado e curioso sobre como consegui fazer a transição com sucesso. Bem, simplesmente aconteceu.

Related posts

Por que alguns freelancers estão fingindo suas vidas

Por que alguns freelancers estão fingindo suas vidas

Estive recentemente no Linkedin, a maior rede social profissional do mundo, e encontrei postagens de designers freelancers que sigo que me chamaram a atenção. Todos postaram fotos de aviões, na praia com seus laptops, de piscinas e escritórios com vistas incríveis.

O assassinato de Jordan Neely e o problema do racismo “patriótico”

Os EUA podem dar o passo essencial de não igualar comportamento racista a ser um bom americano?

O assassinato de Jordan Neely e o problema do racismo “patriótico”

[Alerta de gatilho: este ensaio inclui capturas de tela de pessoas elogiando o assassino de Jordan Neely.] Os policiais finalmente - e talvez com relutância - acusaram Daniel Penny, o homem que sufocou Jordan Neely até a morte, por aquele homicídio.

Repensando a mídia: as cinco verdades de McChesney e o futuro das comunicações

No mundo hiperconectado de hoje, os sistemas de mídia desempenham um papel fundamental na formação da opinião pública e, consequentemente, na tomada de decisões democráticas. Em sua análise profunda da economia política da comunicação, o estudioso Robert McChesney desafia a sabedoria convencional e apresenta o que chama de “cinco verdades” sobre a mídia.

O que torna um podcast influente?

O que torna um podcast influente?

Na semana passada, notei um comunicado de imprensa, enviado via PressGazette (um site de notícias da mídia britânica). O artigo anunciava que a Acast, a empresa de publicidade e hospedagem de podcast Scandi, lideraria um consórcio de "provavelmente os editores mais influentes" em podcasting.