문제

이것은 몇 가지를 따릅니다 다른 질문 (그러나 나는 내 질문을 더 잘 개선했다고 생각합니다).

장치를 착용하기 전에 펌웨어 코드를 테스트하고 싶습니다.

많은 사람들이 코드, 업로드, 테스트 등을 작성한다는 것을 알고 있지만 업로드 전에 작성하고 테스트하고 싶습니다 (주로 많은 시나리오를 자동화하고 싶기 때문에).

따라서이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 펌웨어가 전혀없는 것처럼 순수한 소프트웨어를 작성한다면 CPPUnit (예 :)를 사용하여 진행할 것입니다. 그러나 나는이 펌웨어로 약간 길을 잃었습니다.

어떤 아이디어?

감사

도움이 되었습니까?

해결책

코드가 어떻게 구조되는지 모르면 말하기는 어렵지만 기본적으로 다른 소프트웨어와 마찬가지로 클래스/기능 수준에서 소프트웨어를 테스트 할 수 있습니다. 장치와 인터페이스하는 모든 코드는 Emmulation을 통해 테스트해야 할 가능성이 높습니다.

다른 팁

나는 "올바른"으로 표시된 대답이 전혀 정확하거나 완전하다고 생각하지 않습니다.

펌웨어 코드의 경우 실제로 두 가지가 엄격한 테스트를 수행해야합니다.

  1. 에뮬레이터를 사용하여 수행 된 초기 테스트. 이것은 이상적이지만 대상 플랫폼에 좋은 에뮬레이터를 얻을 수 있다고 가정합니다.

  2. 실제 하드웨어를 테스트하지만 테스트 베드 프레임 워크에서 테스트하십시오. 즉, 실제 장치를 테스트하지만 추가 하드웨어 (예 : 오실로스코프, 프로브) 및 기타 연결로 인해 발생하는 일에 대한 적절한 트레이스/디버그가 있습니다.

펌웨어를 사용하면 종종 가장 어려운 버그가 타이밍과 관련이 있으며 실제 하드웨어에 있으면 표시됩니다. 최악의 경우 실제 조사 행위는 "생산"버전에서만 버그가 나타나지 않도록 타이밍을 변경할 수 있습니다. 그럼 당신은 정말 재미 있습니다.

건배,

-리차드

많은 임베디드 장치에는 소프트웨어 시뮬레이터가 있지만 장치에 따라 다릅니다.

수업을 가능한 한 많이 테스트해야하지만 하루가 끝나면 실행하고 하드웨어에서 테스트해야합니다.

장치에서 펌웨어를 테스트하려면 디버깅 인터페이스를 작성하여 터미널 에뮬레이터를 사용할 수 있습니다. Procomm 장치와 대화합니다. 그런 다음 기능을 작성할 때 디버깅 인터페이스가 클래스에서 메소드를 호출 할 수있는 방법이있어 장치 자체에서 코드를 구체적으로 테스트 할 수 있습니다.

이 완료되면 터미널 에뮬레이터에 스크립트를 작성하여 테스트를 자동으로 수행 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top