2015-02-04 4 views
0

일부 컨텍스트 : 저는 현재 TCP/IP를 통해 연결해야하는 arduino 컨트롤러가 포함 된 홈 자동화 프로젝트를 진행하고 있습니다. arduino는 서버로 작동합니다.원격 TCP 서버 조롱

내 질문 : porpoises 테스트를 위해이 arduino 연결을 모의 어떻게 할 수 있습니까? 배울 좋은 리소스를 찾을 수 없습니다. 내 질문이 중복 되어도 죄송합니다.하지만 내 요구에 맞는 답변을 찾지 못했습니다.

도움이 될 것입니다!

답변

0

나는 그런 낮은 수준에서 시도하고 조롱하지 말 것을 제안합니다.

arduino 서버에 대해 수행하려는 작업을 캡슐화하는 의미있는 인터페이스를 만듭니다. 귀하의 코드는 그것에 의존해야하며이 인터페이스는 단위 테스트를 위해 조롱받을 수 있습니다.

인터페이스를 구현하고 서버와 상호 작용하는 구체적인 클래스가 필요합니다. 실제 서버에 닿는 통합 테스트를 작성하고 테스트하지 마십시오. 잘 모르겠어요

+0

나는 arduino에 명령을 보내고 그것으로부터 응답을 받는다. arduino 서버의 응답에 따라 추가 로직이 실행될 것이다. 이러한 것들을 구현하는 구체적인 클래스가 있습니까? 어떻게 테스트 할 수 있습니까? BTW, 특정 arduino에 대한 각 연결은 스레드이며, 시스템이 실행되는 동안 절대로 닫지 않는 입력 및 출력 스트림으로 작동합니다. –

0

, 정확히 어떻게 시스템 디자인 또는 당신이 조롱 싶지만 테스트 수있는 방법 세 가지 방법을 참조 : netcat to the server

  • 연결합니다. Netcat을 사용하면 서버에 요청을 보내고 수동으로 응답을 확인하여 텍스트 프로토콜을 테스트 할 수 있습니다.

  • 좋아하는 언어로 된 클라이언트 소켓으로 연결을 엽니 다. 그렇게하는 법에 대한 충분한 정보를 찾아야합니다.

  • TCP의 특정 부분을 테스트하려면 scapy to build a TCP handshake을 사용하십시오. TCP의 기본 사항은 rfc793에서 찾을 수 있습니다.

질문에 답변하지 않은 경우, 수행하려는 작업, 전체 시스템 아키텍처 및 사용하려는 프로그래밍 언어에 대한 자세한 정보를 제공해주십시오.

+0

자바로 작업 중이며 TCP/IP를 통해 내 arduinos에 연결하는 클라이언트를 만들었습니다. 문자열을 사용하여 보내는 명령에 응답하려면 서버가 필요합니다. 어떤 제안? –