zoukankan      html  css  js  c++  java
  • 贴上瘾了

    再贴一个用于在单元测试中访问非public成员的TestHelper(原作者:hbifts),主要用于测试GUI代码。你能猜出我这么说的理由吗?

    public class TestHelper 
       

          
    public static object Create(string assemblyName, string typeName, object[] args) 
          

             Assembly asm 
    = Assembly.Load(assemblyName); 
             Type typeToCreate 
    = asm.GetType(typeName,true,true); 
             
    return Activator.CreateInstance(typeToCreate,args,null); 
          }
     
          
    public static object InvokeMethod(object obj,string methodName,object[] args) 
          

             Type objType 
    = obj.GetType(); 
             Type[] argTypes 
    = new Type[args.Length]; 
             
    for(int i=0;i<args.Length;i++
             

                argTypes[i] 
    = args[i].GetType(); 
             }
     
             MethodInfo method 
    = objType.GetMethod(methodName,BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public,null,argTypes,null); 
             
    return method.Invoke(obj,args); 
          }
     
          
    public static object GetField(object obj, string fieldName) 
          

             Type objType 
    = obj.GetType(); 
             FieldInfo fieldInfo 
    = objType.GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public); 
             
    return fieldInfo.GetValue(obj); 
          }
     
       }
     
  • 相关阅读:
    梯度下降法
    超平面
    感知机模型
    三角不等式
    统计学习方法基本概念
    Kaggle 的注册和使用
    win10 部署 Anaconda
    全概率和贝叶斯公式
    行列式
    伴随矩阵
  • 原文地址:https://www.cnblogs.com/taowen/p/21166.html
Copyright © 2011-2022 走看看