###前提・実現したいこと
こんばんは。いつもお世話になってます。
privateかつstaticなメソッドのテストをしたいのですが、何かいい方法はないでしょうか?
ググっているとMSTestではPrivateTypeを利用した方法が有名みたいです。
しかし、
GitHubのこのイシューにあるように.net core2.0以上ではこの方法が使えません。
スタックオーバーフローのこの投稿の回答では、継承云々をすればいいということも書かれています。
しかしその方法の実装はまだ見つけられていません。
一応、勝手にその方法を想像して、
テストしたいメソッドを持つクラスAを継承したクラスBをTest.cs(仮名)内につくってみたりしました。
しかし、AとBが全く同じものであると言えないのがどうなのかなと思います。
それに、Aはできればsealedにしたいクラスです。
テストに書いたコードが間違っていたら辛いと思います。
PrivateTypeを利用するのと似た方法や、継承云々の方法の実装や、
sealedでも可能にしたり、そんな方法を知って使えるようにしたいです。
###補足情報
環境は、
visualstudio2017 C# .netcore2.0
です。
テスト入門者(MSDNのチュートリアルを少しやったくらい)です。
知恵をお貸しいただければ幸いです。
よろしくお願いします。
###追記(2019年9月8日21:00)
なるべく簡潔に書こうとして失敗して書き漏らしてしまいました内容について、追記します。
今回の質問の対象となっているprivateメソッドは既存のコードの一部です。
ただのサンプルアプリケーションのコードなので、
テストされているか定かではないですし、仕様もあいまいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/08 09:26
2019/09/08 12:16 編集
2019/09/08 12:20 編集
2019/09/08 12:37