如何在单元测试中调用公共静态方法

用户名

嗨,我有以下简单方法,需要知道如何在Visual Studio的单元测试中调用它

 public class myClass
 {
     public static bool Test(string value, string regex)
     {
         if (Regex.IsMatch(value, regex, RegexOptions.IgnoreCase))
             return true;

         return false;
     }
 }

这是我的沙发

 [TestMethod]
 public void TestMethod_Test()
 {
     string value = "myValue";
     string regex = "&#@<>\s\\\$\(\)";

     PrivateType pt = new PrivateType(typeof(myClass));
     bool actualresult = (bool)pt.InvokeStatic("Test", new object[] { value, regex });
     bool expectedResult = false;
     Assert.AreEqual(actualresult, expectedResult);

 }
大卫·阿尔诺

您不想使用反射。只需直接调用该方法:

[TestMethod]
public void TestMethod_Test()
{
    string value = "myValue";
    string regex = "&#@<>\s\\\$\(\)";

    var result = ClassContainingTest.Test(value, regex); 
    Assert.AreEqual(false, result);
}

如果ClassContainingTest不是公开的,那么尝试进行单元测试是不明智的Test仅测试可公开访问的功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在DRF单元测试中跳过方法调用?

如何在单元测试中测试异步操作中的方法调用

如何在单元测试中重写被测试的类所调用的方法

如何在单元测试中调用 Postsharp 方面?

如何在 angular 6 单元测试中验证 ngCopy 方法调用

你如何在 Jasmine/Jest 中对独特的方法调用进行单元测试?

如何对__init __()函数中调用的方法进行单元测试?

单元测试静态方法

如何对测试私有方法并依次调用Web服务方法的公共方法进行单元测试

如何在异步单元测试中模拟方法?

如何在python中对POST方法进行单元测试?

如何在模拟方法中对函数进行单元测试

如何在单元测试中实现EF的FIND方法?

如何在单元测试中模拟方法的结果?

如何通过静态调用对功能进行单元测试

在使用Mockito进行单元测试时,如何处理ThirdParty类的静态方法调用?

如何在python中的另一个文件中调用类的方法[单元测试]

单元测试静态类的静态方法

java - 如何在java中对具有嵌套静态类的类进行单元测试?

如何使用Mockito模拟静态方法以进行单元测试

单元测试中的静态类/方法/属性,是否停止

Java中的单元测试私有和静态方法

如何在Android中测试静态方法调用?

如何使用phpunit单元测试在已测试类的构造函数中调用的方法

如何对已测试(视图模型)类中的方法进行单元测试调用?

为什么单元测试无法访问模型中的公共静态常量?

如何在角度单元测试中模拟函数中的服务调用?

当状态在axios调用中更新时,如何在单元测试(React JS)中声明状态?

如何对调用 void 方法的方法进行单元测试?