我正在为我的内部方法编写单元测试用例。我已经在我的邮件类项目的AssemblyInfo.cs中进行了必要的更改 [assembly:InternalsVisibleTo(“myunitest_assemblyname”)]
现在我可以在单元测试用例方法中访问我的内部方法。 但是当我编译代码时,它会给出一个错误,如下所示
我的主要课程名称很强。
如果我错过了一点,那就太好了。
主类结构
namespace Renewals
{
public class StateProcessor
{
internal virtual void PutEmailInQueue(DataTable dataTable)
{
}
}
}
//测试类结构
namespace Renewals.Tests.Unit
{
[TestClass]
public class StateProcessorTest
{
[TestMethod]
public void PutEmailInQueueTest()
{
DateTime processingDate = Convert.ToDateTime("27-feb-2013"); ;
StateProcessor stateProcess = new StateProcessor(processingDate);
stateProcess.PutEmailInQueue(new DataTable());
}
}
}
PutEmailInQueue - 这个方法给我带来了问题。
答案 0 :(得分:2)
你写道,你的班级使用强名称。
我认为您必须使用公钥修改InternalsVisibleTo()语句。
例如为:[组件:InternalsVisibleTo( “friend_signed_B,公钥= 0024000004800000940000000602000000240000525341310004000001000100e3aedce99b7e10823920206f8e46cd5558b4ec7345bd1a5b201ffe71660625dcb8f9a08687d881c8f65a0dcf042f81475d2e88f3e3e273c8311ee40f952db306c02fbfc5d8bc6ee1e924e6ec8fe8c01932e0648a0d3e5695134af3bb7fab370d3012d083fa6b83179dd3d031053f72fc1f7da8459140b0af5afc4d2804deccb6”)]
有关更多信息,请参阅:http://msdn.microsoft.com/en-us/library/bb385180.aspx