我试图熟悉单元测试,但我不断收到这个恼人的错误,我不明白为什么。我做了一个只分2个数字的课程。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DivideNum
{
class Program
{
public static int doStuff(int num1, int num2)
{
int result = num1 / num2;
return result;
}
static void Main(string[] args)
{
}
}
}
然后我进行了单元测试
using DivideNum;
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace UnitTestProject1
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
//arrange
int a = 10;
int b = 2;
int result = 5;
//act
}
}
}
我添加了对DivideNum命名空间的引用并使用DivideNum添加,但我仍然无法在我的测试类中获得对DivideNum类的引用。它在我的测试代码中根本不会显示出来。为什么我不能在我的Test类中使用我的DivideNum类?
答案 0 :(得分:3)
如果要从其他程序集(单元测试项目)访问它,则需要将您的类标记为公共类。像这样:
public class Program
{
public static int doStuff(int num1, int num2)
{
int result = num1 / num2;
return result;
}
static void Main(string[] args)
{
}
}
答案 1 :(得分:0)
Program
类没有访问类型,因此默认情况下为internal
。将其更改为public
应该可以解决问题。
public class Program
{
// Do stuff
}