Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym przewodniku Szybki start dowiesz się, jak utworzyć przepływ pracy usługi GitHub w celu przetestowania kodu źródłowego platformy .NET. Automatyczne testowanie kodu .NET w usłudze GitHub jest określane mianem ciągłej integracji (CI), gdzie żądania scalenia lub zmiany w kodzie źródłowym wyzwalają przepływy pracy do wykonania testów. Oprócz kompilowania kodu źródłowego testowanie gwarantuje, że skompilowany kod źródłowy będzie działał jako zamierzony przez autora. Zazwyczaj testy jednostkowe służą jako natychmiastowa pętla informacji zwrotnej, aby zapewniać poprawność zmian w kodzie źródłowym.
Wymagania wstępne
- Konto usługi GitHub.
- Repozytorium kodu źródłowego platformy .NET.
Tworzenie pliku przepływu pracy
W repozytorium GitHub dodaj nowy plik YAML do katalogu .github/workflows . Wybierz zrozumiałą nazwę pliku, co wyraźnie wskaże, co ma zrobić przepływ pracy. Aby uzyskać więcej informacji, zobacz Plik przepływu pracy.
Ważne
Usługa GitHub wymaga, aby pliki kompozycji przepływu pracy zostały umieszczone w katalogu .github/workflows .
Pliki przepływu pracy zwykle definiują kompozycję co najmniej jednej akcji usługi GitHub za pośrednictwem elementu jobs.<job_id>/steps[*]
. Aby uzyskać więcej informacji, zobacz Składnia przepływu pracy dla funkcji GitHub Actions.
Utwórz nowy plik o nazwie build-and-test.yml, skopiuj i wklej do niego następującą zawartość YML:
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
W poprzedniej kompozycji przepływu pracy:
name: build and test
definiuje nazwę, "kompilacja i testowanie" będzie wyświetlana na wskaźnikach stanu przepływu pracy.name: build and test
Węzeł
on
oznacza zdarzenia, które wyzwalają przepływ pracy:on: push: pull_request: branches: [ main ] paths: - '**.cs' - '**.csproj'
- Wyzwalany, gdy element
push
lubpull_request
wystąpi na gałęzimain
, gdzie jakiekolwiek pliki zmienione kończą się rozszerzeniami plików .cs lub .csproj.
- Wyzwalany, gdy element
Węzeł
env
definiuje nazwane zmienne środowiskowe (env var).env: DOTNET_VERSION: '6.0.401' # The .NET SDK version to use
- Zmienna środowiskowa
DOTNET_VERSION
ma przypisaną wartość'6.0.401'
. Później odwołuje się do zmiennej środowiskowejactions/setup-dotnet@v3
w celu określeniadotnet-version
akcji usługi GitHub.
- Zmienna środowiskowa
Węzeł
jobs
opracowuje kroki do realizacji w przepływie pracy.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
- Istnieje jedno zadanie o nazwie
build-<os>
, gdzie<os>
jest nazwą systemu operacyjnego zstrategy/matrix
. Elementyname
iruns-on
są dynamiczne dla każdej wartości wmatrix/os
. Zostanie to uruchomione w najnowszych wersjach systemów Ubuntu, Windows i macOS. - Akcja
actions/setup-dotnet@v3
usługi GitHub służy do konfigurowania zestawu .NET SDK z określoną wersją ze zmiennej środowiskowejDOTNET_VERSION
. - Polecenie
dotnet restore
jest wywoływane. - Polecenie
dotnet build
zostaje wywołane. - Wywoływane jest polecenie
dotnet test
.
- Istnieje jedno zadanie o nazwie
Stwórz odznakę statusu przepływu pracy
Powszechną nomenklaturą repozytoriów GitHub jest posiadanie pliku README.md w katalogu głównym katalogu repozytorium. Podobnie, miło jest przedstawić najnowszy status dla różnych przepływów pracy. Wszystkie przepływy pracy mogą wygenerować wskaźnik stanu, który jest wizualnie atrakcyjny w pliku README.md . Aby dodać wskaźnik stanu przepływu pracy:
W repozytorium GitHub wybierz opcję nawigacji Akcje .
Wszystkie przepływy pracy repozytorium są wyświetlane po lewej stronie, należy wybrać żądany przepływ pracy oraz przycisk z wielokropkiem (...).
- Przycisk wielokropka (...) rozwija opcje menu dla wybranego przepływu pracy.
Wybierz opcję menu Utwórz znaczek stanu.
Wybierz przycisk Kopiuj odznakę stanu Markdown.
Wklej znacznik Markdown do pliku README.md , zapisz plik, zatwierdź i wypchnij zmiany.
Aby uzyskać więcej informacji, zobacz Dodawanie wskaźnika stanu przepływu pracy.
Przykładowy wskaźnik stanu testu przepływu pracy
Przekazywanie | Niepowodzenie | Brak stanu |
---|---|---|
|
|
|
Zobacz też
- dotnet restore
- zbuduj dotnet
- dotnet test
- Testowanie jednostkowe aplikacji .NET
- actions/checkout
- actions/setup-dotnet