1
resposta

Testes de integrations no flutter driver

Queria uma ajuda, tem como implementar no github actions os reports dos tests, automatizados

1 resposta

Olá Softdesign! Como vai?

Implementar os relatórios dos testes automatizados no GitHub Actions é uma excelente maneira de manter um registro das execuções e resultados dos seus testes. Para isso, você pode utilizar alguma ferramenta de geração de relatórios, como o Allure ou o HTML Test Report.

Vou te mostrar um exemplo de como você pode fazer isso utilizando o Allure:

  1. Primeiro, adicione o pacote do Allure ao seu projeto Flutter. Você pode fazer isso adicionando a seguinte dependência ao seu arquivo pubspec.yaml:
dev_dependencies:
  flutter_test:
    sdk: flutter

  allure_dart: ^2.8.0
  1. Em seguida, crie um arquivo de configuração para o Allure, chamado allure_config.json, na raiz do seu projeto. Nesse arquivo, você pode definir algumas configurações, como o diretório onde os relatórios serão gerados. Por exemplo:
{
  "allure": {
    "directory": "test/allure-results"
  }
}
  1. Agora, você pode utilizar o Allure no seu teste automatizado. Por exemplo, suponha que você tenha um teste chamado integration_test.dart. Você pode adicionar o seguinte código ao seu teste:
import 'package:allure_dart/allure_dart.dart' as allure;

void main() {
  allure.group('Integration Tests', () {
    allure.test('Test Case 1', () {
      // Seu código de teste aqui
    });

    allure.test('Test Case 2', () {
      // Seu código de teste aqui
    });

    // Adicione mais testes, se necessário
  });
}
  1. Por fim, você pode adicionar um comando no seu fluxo de CI/CD do GitHub Actions para gerar os relatórios do Allure. Por exemplo, você pode adicionar o seguinte trecho no seu arquivo .github/workflows/main.yml:
name: CI

on:
  push:
    branches:
      - main

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Setup Flutter
        uses: subosito/flutter-action@v1

      - name: Run tests
        run: flutter test

      - name: Generate Allure report
        run: allure generate test/allure-results --clean -o test/allure-report

      - name: Publish Allure report
        uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: test/allure-report

Com essas configurações, o Allure irá gerar os relatórios dos seus testes automatizados no diretório test/allure-report do seu repositório no GitHub.

Espero ter ajudado! Se tiver mais alguma dúvida, é só perguntar. Bons estudos!