Как настроить запуск тестов в GitHub Actions для приложения, созданного с использованием Laravel Sail?

Как настроить запуск тестов в GitHub Actions без необходимости каждый раз запускать Sail?
  • 3 октября 2023 г. 10:47
Ответы на вопрос 1
Для настройки запуска тестов в GitHub Actions для приложения, созданного с использованием Laravel Sail, выполните следующие шаги:

1. Создайте файл `.github/workflows/tests.yml` в корневом каталоге вашего репозитория.

2. Откройте файл `tests.yml` и добавьте следующий код:

```yml
name: Tests

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2

      - name: Set up PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: '8.0'

      - name: Install dependencies
        run: composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts

      - name: Set up MySQL
        run: |
          sudo service mysql stop
          sudo service mysql start

      - name: Copy .env
        run: cp .env.example .env
          
      - name: Generate application key
        run: php artisan key:generate

      - name: Set up Sail
        run: ./vendor/bin/sail up -d

      - name: Run tests
        run: ./vendor/bin/sail test
```

3. Сохраните файл `tests.yml`.

4. Данный workflow будет запускаться каждый раз при пуше в ветку `main`.

5. Команды для установки зависимостей, настройки MySQL, копирования `.env` файла и генерации ключа приложения соответственно выполняются в предварительных шагах.

6. Важно, чтобы переменные окружения (например, база данных) были правильно настроены в файле `.env.example`.

7. Запуск тестов выполняется с помощью команды `./vendor/bin/sail test`.

Теперь, при каждом пуше в репозиторий, GitHub Actions автоматически выполнит тестирование вашего приложения с использованием Laravel Sail.
Похожие вопросы