67744


Visual Studio 2019において、下記のようなクラスのメソッドについて単体テストを作成できない。

[![画像の説明をここに入力](https://i.stack.imgur.com/amoJc.png)](https://i.stack.imgur.com/amoJc.png)

このプロジェクトは、単体テスト用のプロジェクトではなく、.NET Core3.1のWinFormsのプロジェクト（non-test
project）かつpublicなクラスのpublicなメソッドにもかかわらず、上記のエラーが出て単体テストを生成できません。  
生成するにはどのようにすればよろしいでしょうか。

追記：  
プロジェクトの参照先のプロジェクトが（意図せず）単体テストプロジェクトを参照していたため、参照元のプロジェクトも単体テストプロジェクトと認識されているため、単体テストを作成できませんでした。無事解決いたしました。


CC BY-SA 4.0
2020-06-16T22:06:02.837
67741
2020-06-17T21:09:48.470
2020-06-17T21:09:48.470
34135
34135
question
c# visual-studio
Visual Studio 2019で単体テストを作成できない


私の環境(Windows10 64bit Visual Studio Professional
2019)では再現せず、問題なくテストが実行できてしまいます。  
しかし[本家SO](https://stackoverflow.com/a/44399000)の質問のコメント上で、同様に回答者の環境では再現しないやり取りがされていました。  
こちらはVS2015ですが、結局質問者は「ソリューションを作り直してコードを貼り付けたらエラーが解消した」とのことでした。  
コメント末尾で類似のエラーが起こった人から「テストフレームワークの参照を外したら直った」という報告もありました。

以下は上記の回答と[外部サイト](https://teratail.com/questions/116470)から得られた **一般的な**
対処法とTipsです。  
@matarimocha さんの役には立たないとは思います(ごめんなさい)が、検索してここにたどり着いた方向けの確認事項として追記します。

  * クラスとメソッドはpublicですか？
  * プロパティ単体クラスのテストはできません。

[code]

    namespace WindowsFormsApp1
    {
        //publicじゃない
        class Class1
        {
            public void Test() { }
        }
        public class Class2
        {
            //メソッドがない
            public string HogeProperty { get { return "hoge"; } }
            public int Fuga;
        }
    }
    
[/code]

なお"Create Unit Tests is supported only on a non-test project and within a
public class or public method."のエラーメッセージについて、  
日本語環境では「単体テストの作成は、パブリック クラスかパブリック メソッド内の非テスト
プロジェクトでのみサポートされます。」というエラーメッセージになります。


CC BY-SA 4.0
2020-06-17T00:32:40.073
67744
2020-06-17T00:32:40.073
9820
67741
answer