Это зависит от того, где вы тестируете.Если вы проводите модульное тестирование, лучшим вариантом будет макет, предложенный Брайаном Менаром.
Если вы тестируете в интегрированной или производственной среде, вы можете фактически разорвать соединение между вами и сервером.
В зависимости от вашей операционной системы вы можете сделать это несколькими способами.
Для систем на базе Windows Fiddler - это просто фантастика.Вы можете смоделировать практически все, включая задержки запросов и даже просто отбрасывание запросов.Для Windows это не требует административного доступа.
Для систем на основе Linux одна из техник, которые я использовал в прошлом, - это использование прокси-сервера или отключение порта на уровне операционной системы.Вы можете сделать это, используя iptables, например:
Чтобы запретить доступ к определенному порту (в данном случае 25)
/sbin/iptables -I OUTPUT -p tcp --dest 127.0.0.1 --dport 25 -j DROP
и разрешить его снова:
/sbin/iptables --delete OUTPUT 1
Для этого вам понадобятся права суперпользователя, но у него есть то преимущество, что вам не нужно прикасаться к конфигурации вашего сервера или клиента.