none
NUNITFORMSについて RRS feed

  • 質問

  • VB.NET2003で単体テストしています。
    今回初めてnunitformsを使用していますが、
    使い方がよくわかりません。

    一つのソルーションに一つのプロジェクトがあります。

    FORM1----->スタートアップ
    FORM2
    FORM3----->テストしたいフォームでFORM2から呼び出される

    質問1:
    テストメソッドを記述するクラスファイルは、
    既存のプロジェクトに含めて問題ないでしょうか?
    それとも、別プロジェクトにするのでしょうか?

    今は、一つのプロジェクトでやっていますが、
    **********************************************
     <Test()> _
         Sub TEST1()
            objform = New form3
            objform.Show()
           
            Dim formTester As New FormTester("form3")
            Assert.AreEqual("AAA", formTester.Text)

     end sub
    *************************************************
    とやっていますが、

    TearDown : System.Reflection.TargetInvocationException : 呼び出しのターゲットが例外をスローしました。
      ----> NUnit.Framework.AssertionException : unexpected/expected modal was invoked/not invoked
     
     --TearDown
     at System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean isBinderDefault, Assembly caller, Boolean verifyAccess)
     at System.Reflection.RuntimeMethodInfo.InternalInvoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean verifyAccess)
     at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
     at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
     at NUnit.Core.TestMethod.doTearDown(TestCaseResult testResult)
     --TargetInvocationException
     at NUnit.Extensions.Forms.NUnitFormTest.Verify()

    となって例外が発生してしまいます

    質問2:
    Form2からForm3から呼び出されたとき、
    Form3のコンストラクタで引数でもらった値を変数にセットしているのですが、
    Public Sub New()でやっている処理をテスト用にセットしたいのですが、
    SETUPメソッドでどう書いたらよいかわかりません

    nunitformは、上記ような構成の場合、
    いきなり、Form3の画面をテストすることは、不可能でしょうか?
    Form1経由でないとForm3をテストできないのしょうか?

    よろしくお願いします。

    2006年6月15日 2:44