Megosztás a következőn keresztül:


Rövid útmutató: Tesztérvényesítési GitHub-munkafolyamat létrehozása

Ebben a rövid útmutatóban megtudhatja, hogyan hozhat létre GitHub-munkafolyamatot a .NET-forráskód teszteléséhez. A .NET-kód GitHubon belüli automatikus tesztelését folyamatos integrációnak (CI) nevezzük, ahol a lekérési kérelmek vagy a forráskód módosításai munkafolyamatokat indítanak el. A forráskód létrehozása mellett a tesztelés biztosítja, hogy a lefordított forráskód a szerző szándékának megfelelően működjön. Az egységtesztek gyakran azonnali visszajelzési ciklusként szolgálnak, hogy biztosítsák a forráskód módosításainak érvényességét.

Előfeltételek

  • Egy GitHub-fiók.
  • .NET-forráskódtár.

Munkafolyamat-fájl létrehozása

A GitHub-adattárban adjon hozzá egy új YAML-fájlt a .github/workflows könyvtárhoz. Válasszon egy értelmezhető fájlnevet, amely egyértelműen jelzi a munkafolyamat célját. További információ: Munkafolyamat-fájl.

Fontos

A GitHub megköveteli, hogy a munkafolyamat-összeállítási fájlokat a .github/workflows könyvtárba kell helyezni.

A munkafolyamat-fájlok általában egy vagy több GitHub-művelet összetételét határozzák meg a jobs.<job_id>/steps[*]. További információ: A GitHub Actions munkafolyamat-szintaxisa.

Hozzon létre egy build-and-test.yml nevű új fájlt, másolja és illessze be a következő YML-tartalmat:

name: build and test

on:
  push:
  pull_request:
    branches: [ main ]
    paths:
    - '**.cs'
    - '**.csproj'

env:
  DOTNET_VERSION: '6.0.401' # The .NET SDK version to use

jobs:
  build-and-test:

    name: build-and-test-${{matrix.os}}
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macOS-latest]

    steps:
    - uses: actions/checkout@v3
    - name: Setup .NET Core
      uses: actions/setup-dotnet@v3
      with:
        dotnet-version: ${{ env.DOTNET_VERSION }}

    - name: Install dependencies
      run: dotnet restore
      
    - name: Build
      run: dotnet build --configuration Release --no-restore
    
    - name: Test
      run: dotnet test --no-restore --verbosity normal

Az előző munkafolyamat-összeállításban:

  • A name: build and test határozza meg a nevet; a "build and test" a munkafolyamat állapotjelvényeiben fog megjelenni.

    name: build and test
    
  • A on csomópont a munkafolyamatot kiváltó eseményeket jelöli:

    on:
      push:
      pull_request:
        branches: [ main ]
        paths:
        - '**.cs'
        - '**.csproj'
    
    • Akkor aktiválódik, amikor a main ágon történik egy push vagy pull_request, ahol bármelyik fájl megváltozott és .cs vagy .csproj fájlkiterjesztéssel végződik.
  • A env csomópont nevesített környezeti változókat (env var) határoz meg.

    env:
      DOTNET_VERSION: '6.0.401' # The .NET SDK version to use
    
    • A környezeti változóhoz DOTNET_VERSION hozzá van rendelve az érték '6.0.401'. A környezeti változóra később hivatkozunk a dotnet-versionactions/setup-dotnet@v3 GitHub-művelet megadásához.
  • A jobs csomópont összeállítja a munkafolyamat lépéseit.

    jobs:
      build-and-test:
    
        name: build-and-test-${{matrix.os}}
        runs-on: ${{ matrix.os }}
        strategy:
          matrix:
            os: [ubuntu-latest, windows-latest, macOS-latest]
    
        steps:
        - uses: actions/checkout@v3
        - name: Setup .NET Core
          uses: actions/setup-dotnet@v3
          with:
            dotnet-version: ${{ env.DOTNET_VERSION }}
    
        - name: Install dependencies
          run: dotnet restore
          
        - name: Build
          run: dotnet build --configuration Release --no-restore
        
        - name: Test
          run: dotnet test --no-restore --verbosity normal
    
    • Egyetlen elnevezett feladat van, amelyben a <os> az operációs rendszer neve a strategy/matrix-ből. Az name és runs-on elemek dinamikusak az matrix/os minden értékében. Ez az Ubuntu, a Windows és a macOS legújabb verzióin fog futni.
    • A actions/setup-dotnet@v3 GitHub-művelet a .NET SDK beállítására szolgál a környezeti változó megadott verziójával DOTNET_VERSION .
    • A dotnet restore parancs meghívása.
    • A dotnet build parancs meghívása.
    • A dotnet test parancs meghívása.

Munkafolyamat állapotjelvényének létrehozása

A GitHub-adattárak általános elnevezése, hogy egy README.md fájl található az adattár könyvtárának gyökerében. Hasonlóképpen, jó érzés jelenteni a különböző munkafolyamatok legújabb állapotát. Minden munkafolyamat létrehozhat egy állapotjelvényt, amely vizuálisan vonzó a README.md fájlban. A munkafolyamat állapotjelvényének hozzáadása:

  1. A GitHub-adattárban válassza a Műveletek navigációs lehetőséget.

  2. Az összes adattár-munkafolyamat megjelenik a bal oldalon, válassza ki a kívánt munkafolyamatot és a három pont (...) gombot.

    • A három pont (...) gomb kibontja a kijelölt munkafolyamat menübeállításait.
  3. Válassza az Állapotjelvény létrehozása menüt.

    GitHub: Állapotjelvény létrehozása

  4. Válassza az Állapot jelvény másolása Markdown formátumban gombot.

    GitHub: Állapotjelvény másolása Markdown-hoz

  5. Illessze be a Markdownt a README.md fájlba, mentse a fájlt, véglegesítse és küldje el a módosításokat.

További információ: Munkafolyamat-állapotjelvény hozzáadása.

Példa a munkafolyamat állapotjelvényének tesztelése

Eltávozás Sikertelen Nincs állapot
GitHub: tesztelési jelvény GitHub: sikertelen teszt jelvény GitHub: állapot nélküli teszt jelvény

Lásd még

Következő lépések