• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 測試技術
    • 博客
    • 視頻
    • 開源
    • 論壇
    • 沙龍
    • 下載
    • 雜志
    • 招聘

    字號: | 推薦給好友 上一篇 | 下一篇

    使用NUnit測試Private和Protected方法

    發布: 2008-9-25 10:20 | 作者: 不詳 | 來源: 領測軟件測試網 采編 | 查看: 49次 | 進入領測軟件測試網論壇討論

    領測軟件測試網

    j'GL$V B,F$zr軟件測試技術門戶1x h%r]cndY}
    軟件測試技術門戶2E$@afv{d'OD
    軟件測試技術門戶)v Z#e6KQ,E!l&x
    測試 private 方法需要使用反射 軟件測試技術門戶QB/?z+`N
    假設要測試下面 ClassLibrary1.Class1 中的 MyPrivateMethod() 方法:
    using System;
    
    namespace ClassLibrary1
    {
        /// <summary>
        /// Summary description for Class1.
        /// </summary>
        public class Class1
        {
            protected int MyPrivateMethod(int val1, int val2)
            {
                return val1 + val2;
            }
        } // end of class
    
    } // end of namespace
    下面是測試類代碼:
    using System;
    using System.Reflection;
    
    using NUnit.Framework;
    
    namespace ClassLibrary1
    {
        /// <summary>
        /// Summary description for Tester.
        /// </summary>
        [TestFixture]
        public class Tester
        {
            [Test]
            public void MyPrivateMethod_Test()
            {
                ClassLibrary1.Class1 class1 = new ClassLibrary1.Class1();
                object[] aobjParams = new object[] { 3, 4 };
                object strRet;
                strRet = RunInstanceMethod(typeof(ClassLibrary1.Class1),
                    "MyPrivateMethod",
                    class1,
                    aobjParams
                );
                Assert.AreEqual(7, strRet.ToString());
            }
    
            /// <summary>
            /// 運行靜態方法
            /// </summary>
            /// <param name="t"></param>
            /// <param name="strMethod"></param>
            /// <param name="aobjParams"></param>
            /// <returns></returns>
            public static object RunStaticMethod(System.Type t, string strMethod,
                object[] aobjParams)
            {
                BindingFlags eFlags =
                    BindingFlags.Static | BindingFlags.Public |
                    BindingFlags.NonPublic;
                return RunMethod(t, strMethod,
                    null, aobjParams, eFlags);
            }
    
            /// <summary>

    L5r~)`j9zL+T#@ Pt._ 老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>