Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自动异步套接字测试_C#_Sockets_Nunit - Fatal编程技术网

C# 自动异步套接字测试

C# 自动异步套接字测试,c#,sockets,nunit,C#,Sockets,Nunit,我想做一些自动化测试,以确保我的传输层工作正常。问题是我使用了异步UDP套接字,测试在调用回调之前完成。我想测试一些基本场景,比如发送几个字节,并测试它们在另一端是否被正确接收 问题是:使用异步套接字自动化测试的最有效方法是什么?异步套接字是什么意思?使用异步编程模型? 如果您想测试传输层,那么我将重点关注这一点,而不是异步套接字。 为了测试传输层,可以使用来自两个线程的两个套接字进行测试。一条线读一条线写。我假设您的协议已经支持ping消息。您所说的异步套接字是什么意思?使用异步编程模型? 如

我想做一些自动化测试,以确保我的传输层工作正常。问题是我使用了异步UDP套接字,测试在调用回调之前完成。我想测试一些基本场景,比如发送几个字节,并测试它们在另一端是否被正确接收


问题是:使用异步套接字自动化测试的最有效方法是什么?

异步套接字是什么意思?使用异步编程模型? 如果您想测试传输层,那么我将重点关注这一点,而不是异步套接字。
为了测试传输层,可以使用来自两个线程的两个套接字进行测试。一条线读一条线写。我假设您的协议已经支持ping消息。

您所说的异步套接字是什么意思?使用异步编程模型? 如果您想测试传输层,那么我将重点关注这一点,而不是异步套接字。
为了测试传输层,可以使用来自两个线程的两个套接字进行测试。一条线读一条线写。我假设您的协议已经支持ping消息。

由于数据传递发生在不同的线程上,您需要阻止测试等待接收回调的通知,可能有一个超时。

由于数据传递发生在不同的线程上,您需要阻止测试等待接收回调的通知,可能有一个超时。

我使用Socket.BeginReceiveFrom接收数据。我遇到的一个问题是,测试函数在调用BeginReceiveFrom回调之前退出。我使用Socket.BeginReceiveFrom接收数据。我遇到的一个问题是,测试函数在调用BeginReceiveFrom回调之前退出。我所做的不是很优雅,但它可以工作。在我打电话验证我的模拟之前,一个简单的Sleep2000就成功了。谢谢我所做的并不是很优雅,但很管用。在我打电话验证我的模拟之前,一个简单的Sleep2000就成功了。谢谢