以下の内容はhttps://rksoftware.hatenablog.com/entry/2025/04/20/130000より取得しました。


GitHub Actions でテストを実行する

dotnet test を実行します。

■ テンプレートでも十分

GitHub のサイトでポチポチして生まれるテンプレートでも十分な情報がありますが、動くとは限りません。

■ 動かしている .yml

こんな感じです。テストプロジェクトの場所を指定するよう変更しました。

# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net

name: .NET

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v4
    - name: Setup .NET
      uses: actions/setup-dotnet@v4
      with:
        dotnet-version: 10.0.x
    - name: Restore dependencies
      run: dotnet restore ./src/RKPlugin/TestProject1/
    - name: Build
      run: dotnet build ./src/RKPlugin/TestProject1/ --no-restore
    - name: Test
      run: dotnet test ./src/RKPlugin/TestProject1/ --no-build --verbosity normal

もともとはこんな感じ。

    - name: Restore dependencies
       run: dotnet restore
     - name: Build
       run: dotnet build --no-restore
     - name: Test
       run: dotnet test --no-build --verbosity normal

これだと、リポジトリのトップに .sln ファイルか .csproj ファイルがおかれた配置が想定されていそうです。あと、特定のテストプロジェクトだけ狙って実行できていないのも気になるポイントでした。

参考

狙ったプロジェクトだけ実行する。

rksoftware.hatenablog.com

毎回パス指定するの無駄じゃない?

cd コマンドは使用可能です。これを活用すればパスを何度も書かなくてよくなる、はずです。
しかし、この cd の移動、- name: の中しか有効になりません。つまり

    - name: cd
       run: cd ./src/PKPlugin/ TestProject1
    - name: Restore dependencies
       run: dotnet restore
     - name: Build
       run: dotnet build --no-restore
     - name: Test
       run: dotnet test --no-build --verbosity normal

のように書いても - name: Restore dependencies ではトップに戻ってしまいます。
-name: の構成を変えればいいのですが、それより毎回書いてしまう方が早いと思って。




以上の内容はhttps://rksoftware.hatenablog.com/entry/2025/04/20/130000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14