Slide 1

Slide 1 text

Table driven tests no golang? O que é isso?

Slide 2

Slide 2 text

Quem sou eu? Sou este ai https://creativecommons.org/licenses/by-sa/4.0/ Table driven tests no golang? O que é isso? https://redrat.com.br

Slide 3

Slide 3 text

Table driven tests no golang? O que é isso? Pessoas aleatórias passando por esta palestra, isso foi apenas uma piada pra quebrar o gelo e deixar o ambiente mais descontraído, não tendo nenhuma relação com a palestra em si. Obrigado :)

Slide 4

Slide 4 text

Antes de falarmos de table driven tests... Bora revisar o conhecimento? Table driven tests no golang? O que é isso?

Slide 5

Slide 5 text

Table driven tests no golang? O que é isso?

Slide 6

Slide 6 text

Table driven tests no golang? O que é isso? Table driven tests • Conceito para escrita de testes, não é uma ferramenta ou framework • Baseasdo em premissas de DRY e KISS • Pensado para executar testes em paralelo • Muito usado em Golang e começando em Javascript e Python

Slide 7

Slide 7 text

Table driven tests no golang? O que é isso?

Slide 8

Slide 8 text

Table driven tests no golang? O que é isso? https://github.com/joubertredrat/pokelang

Slide 9

Slide 9 text

Mas Joubert... Não fica mais lento executar os testes com table driven tests? Table driven tests no golang? O que é isso?

Slide 10

Slide 10 text

Table driven tests no golang? O que é isso?

Slide 11

Slide 11 text

Table driven tests no golang? O que é isso?

Slide 12

Slide 12 text

Mas Joubert... Dá pra rodar somente um dos testes? Table driven tests no golang? O que é isso?

Slide 13

Slide 13 text

Table driven tests no golang? O que é isso?

Slide 14

Slide 14 text

Mas Joubert... Ok, quais suas considerações então? Table driven tests no golang? O que é isso?

Slide 15

Slide 15 text

Table driven tests no golang? O que é isso? Pontos que gosto • Facilidade para testar valores de retorno de acordo com os parametros • Facilidade em definir e manter valores esperados, argumentos, mocks, etc • Testes em paralelo (embora ainda não consigo fazer isso hahaha)

Slide 16

Slide 16 text

Table driven tests no golang? O que é isso? Pontos que não gosto • Usar como bala de prata (morte aos testes unitários convencionais) • Usar para testar comportamentos, como erros • A tabela ficar enorme, obrigando a encapsulamento em funções

Slide 17

Slide 17 text

Table driven tests no golang? O que é isso?

Slide 18

Slide 18 text

Perguntas? Table driven tests no golang? O que é isso?

Slide 19

Slide 19 text

Esta e outras palestras Table driven tests no golang? O que é isso? https://bit.ly/joubertredrat-palestras

Slide 20

Slide 20 text

Obrigado Table driven tests no golang? O que é isso?