【Winform】中級:.NET FrameworkでxUnitを使用する手順
xUnitは、.NETエコシステムで広く使われているユニットテストフレームワークです。.NET FrameworkプロジェクトでもxUnitを活用することで、コードの品質を確保し、テスト駆動開発(TDD)を実践することができます。さらに、CI/CDパイプラインを導入することで、コードの変更があるたびに自動的にテストが実行され、継続的にソフトウェアの品質を維持することが可能です。本ガイドでは、.NET FrameworkプロジェクトでxUnitを使ってテストを作成し、CI/CDパイプラインを設定する手順を説明します。
1. .NET Frameworkプロジェクトの作成
新しいプロジェクトの作成
Visual Studioで新しいプロジェクトの作成をクリックします。
プロジェクトテンプレートから「Windows Forms App (.NET Framework)」を選択します。
プロジェクト名と保存場所を指定して、プロジェクトを作成します。
2. xUnitテストプロジェクトの追加
新しいxUnitテストプロジェクトの作成
ソリューションエクスプローラーでソリューションを右クリックし、新しいプロジェクトの追加を選択します。
「クラスライブラリ (.NET Framework)」を選択し、プロジェクト名をMyWinFormApp.Testsとします。
xUnitパッケージのインストール
ソリューションエクスプローラーでテストプロジェクトを右クリックし、NuGet パッケージの管理を選択します。参照タブで「xunit」と検索し、xunitとxunit.runner.visualstudioパッケージをインストールします。
xunit: xUnitのメインパッケージ
xunit.runner.visualstudio: Visual StudioでxUnitテストを実行するためのランナー
テストプロジェクトにWinFormプロジェクトへの参照を追加
ソリューションエクスプローラーでテストプロジェクトを右クリックし、追加-参照を選択します。プロジェクトタブでMyWinFormAppプロジェクトを選択し、OKをクリックします。
System.Windows.Forms 参照の追加
テストプロジェクトに System.Windows.Forms アセンブリの参照を追加します。
ソリューションエクスプローラーで、テストプロジェクトを右クリックし、追加-参照を選択します。アセンブリ > フレームワーク タブから System.Windows.Forms を選択し、OKをクリックします。
3. テストクラスとメソッドの作成
テストクラスの作成
テストプロジェクトに新しいクラスを追加し、名前をForm1Testsとします。
テストメソッドの作成
WinFormアプリケーションのAddメソッドに対するテストメソッドを作成します。
テストクラスのコード例:
using Xunit;
using MyWinFormApp;
public class Form1Tests
{
    [Fact]
    public void Add_ShouldReturnCorrectSum_WhenTwoNumbersAreGiven()
    {
        // Arrange
        var form = new Form1();
        int num1 = 2;
        int num2 = 3;
        int expected = 5;
        // Act
        int result = form.Add(num1, num2);
        // Assert
        Assert.Equal(expected, result);
    }
}テストの実行
Visual Studioのテストメニューからテスト エクスプローラーを開き、すべてのテストの実行をクリックして、テストを実行します。
4. CI/CDパイプラインの設定
.NET Frameworkプロジェクトでも、GitHub ActionsやAzure Pipelinesなどを使用してCI/CDパイプラインを設定することができます。以下は、GitHub Actionsを使用する場合の基本的な設定例です。
.github/workflows/dotnet.yml の例:
name: .NET Framework
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]
jobs:
  build:
    runs-on: windows-latest
    steps:
    - uses: actions/checkout@v2
    - name: Setup .NET Framework
      uses: microsoft/setup-msbuild@v1.0.2
    - name: Restore dependencies
      run: nuget restore
    - name: Build
      run: msbuild /p:Configuration=Release
    - name: Run tests
      run: dotnet test --no-build --verbosity normalまとめ
.NET Frameworkプロジェクトでも、xUnitを利用してユニットテストを作成し、Visual Studioで実行することが可能です。xUnitは、.NET Frameworkでも広くサポートされており、CI/CDパイプラインにも容易に統合できます。このガイドに従って、.NET FrameworkプロジェクトでxUnitを活用して高品質なソフトウェア開発を行ってください。







ディスカッション
コメント一覧
まだ、コメントがありません