Testando nossa api Go no Github Actions integrando com Codecov

Vinícius Boscardin - Mar 27 '22 - - Dev Community

Com todo o fluxo de testes funcional que criamos lá na parte 2 da nossa série, precisamos agora botar isso para rodar sempre que algo acontecer no nosso repositório no github. Vamos configurar o arquivo .github/workflows/test.yaml.

on: [push, pull_request]
name: Run test suite
jobs:
  test:
    strategy:
      matrix:
        go-version: [1.18.x]
        os: [ubuntu-latest]
    runs-on: ${{ matrix.os }}
    steps:
    - name: Install Go
      uses: actions/setup-go@v2
      with:
        go-version: ${{ matrix.go-version }}
    - name: Checkout code
      uses: actions/checkout@v2
    - name: Download swaggo
      run: go install github.com/swaggo/swag/cmd/swag@latest
    - name: Install swaggo
      run: swag init -d adapter/http --parseDependency --parseInternal --parseDepth 2 -o adapter/http/docs
    - name: Test
      run: go mod tidy && go test ./... -coverprofile=coverage.txt -covermode=atomic

    - name: Upload coverage report
      uses: codecov/codecov-action@v1.0.2
      with:
        token: 276e28b3-208f-4012-ac00-594ff09c65a3
        file: ./coverage.txt
        flags: unittests
        name: codecov-umbrella
Enter fullscreen mode Exit fullscreen mode

Precisamos capturar o token do Codecov para mandar o resultado dos testes, para isso vamos em codecov.io

Image description

Image description
Capturando o token e adicionando ele no arquivo .github/workflows/test.yaml já podemos realizar o commit da nossa alteração e ver se tudo vai funcionar.
Quando o actions terminar de rodar basta dar um F5 na página do codecov para observar o resultado do nosso coverage 100%.

Image description

Sua vez

Vai na fé! Acredito totalmente em você, independente do seu nível de conhecimento técnico, você vai criar a melhor api em GO.
Se você se deparar com problemas que não consegue resolver, sinta-se à vontade para entrar em contato. Vamos resolver isso juntos.

. . . . . . . . . . .
Terabox Video Player