GitHub Actions Üzerinde Çoklu İşletim Sistemi Test Matrisi Kurma

0 Replies 2 Views
Raters
Participants
Thread Starter #1
GitHub Actions Üzerinde Çoklu İşletim Sistemi Test Matrisi Kurma

Geliştiriciler için yazılımın farklı işletim sistemlerinde düzgün çalışmasını sağlamak, modern CI/CD süreçlerinin temel taşlarından biridir. GitHub Actions, bu ihtiyaca yönelik güçlü bir araç olmakla beraber, özellikle testleri çeşitli platformlarda aynı anda yürütmek için "matrisi" kullanmak oldukça verimlidir. Bu sayede, Windows, Linux ve macOS gibi farklı ortamların uyumluluğu tek bir konfigürasyonla sağlanabilir.

İlk olarak, "matrix" anahtar kelimesiyle tanımlanan yapıyı kullanmak, farklı işletim sistemleri ve bağımlılık kombinasyonlarını yapılandırmak açısından oldukça pratiktir. Örneğin, aşağıdaki örnekte, en yaygın üç işletim sistemi ve Node.js sürümleri ile testler yürütülmekte:

CODE
12345678910111213141516171819202122232425262728293031323334353637383940
name: Çoklu İşletim Sistemi Testleri

on:
  push:
    branches:
[list]
[*]main
[/list]
  pull_request:

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macos-latest]
        node: [14, 16]
    steps:
[list]
[*]name: Checkout kodu
[/list]
        uses: actions/checkout@v2

[list]
[*]name: Node.js kur
[/list]
        uses: actions/setup-node@v2
        with:
          node-version: ${{ matrix.node }}

[list]
[*]name: Bağımlılıkları yükle
[/list]
        run: npm install

[list]
[*]name: Testleri çalıştır
[/list]
        run: npm test


Bu yapı, her işletim sistemi ve Node sürüm kombinasyonu için bağımsız joblar oluşturur ve paralel şekilde çalıştırır. Böylece, platforma özgü uyumsuzluklar veya hatalar kolayca tespit edilir. Ayrıca, "runs-on" parametresi ile farklı ortamların seçimi, "strategy" ile de esneklik sağlanır.

Daha karmaşık senaryolarda, örneğin farklı veritabanı veya API sürümleri test edilmek isteniyorsa, bu matrise ek parametreler eklenerek genişletilebilir. Ayrıca, her ortamda farklı yapılandırma veya ortam değişkenleri tanımlamak da mümkündür.

Sonuç olarak, GitHub Actions üzerinde çoklu işletim sistemi test matrisi kurmak, kod uyumluluğu ve güvenilirliği artırmanın en etkin yollarından biridir. Bu sayede, geliştirme sürecinde olası platform bağımlı hatalar minimize edilir ve ürün kalitesi yükselir.

You must be logged in to reply.

0 quotes selected