我接受了功能测试。测试目的是在触发SNMP陷阱消息后检查我的SNMP管理器是否正常工作。
问题是,我的测试仅在调试模式下正常工作。
我尝试使用“ManualResetEvent”和“Thread.Sleep”来帮助“经理”接收事件。
[TestMethod]
public void SendingTrap_To_Running_SnmpManager()
{
_sut.Engine.Start();
bool trapReciverHandlerWasTriggered = false;
_sut.WatcherTrapV2ReceivedDelegate = (sender, args) =>
{
trapReciverHandlerWasTriggered = true;
};
Messenger.SendTrapV2(//args are not imporant in this case);
Thread.Sleep(2000);
Assert.IsTrue(trapReciverHandlerWasTriggered, "Trap was not recived by SNMP-Manager.");
_sut.Engine.Stop();
}