C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 96 を表示中)
■57196 / )  Re[1]: 単体テスト時の例外発生について
□投稿者/ よねKEN (678回)-(2011/02/17(Thu) 00:49:24)
回避方法はAzuleanさんの指摘の通りだと私も思います。(refの使用か、private指定のどちらかをやめる)
#InternalVisibleTo属性は付与しても無理じゃないでしょうか。

No57187 (unagi さん) に返信
> テスト メソッド TestProject1.Class1Test.testTest が例外をスローしました:
> System.InvalidProgramException: JIT コンパイラで内部的な制限が発生しました。

InvalidProgramExceptionはILコードで不正がある場合に発生する例外です。
コンパイラなどのILコードを生成するプログラムが吐き出したものがバグっているということです。
(具体的には、自動生成される プロジェクト名+"_Accessor.dll"のILコードが不正)

テストしたいメソッドが

private bool test(ref List<Class2> numberList)

というように「List<Class2>の参照」を要求していますが、privateメンバーのテストをする際に用いられるのは、
自動生成されたClass2_Accessorクラスであり型が違うために、testメソッドが呼び出せないからですね。

現状のVisual Studioのテスト機能のprivateメンバーのテストに対するサポートの実現方法から考えると
ご質問のようなパターンのテストは仕様的にたぶんできないと思います。
返信 編集キー/


管理者用

- Child Tree -