제목이 다 나와 있습니다. 우리 회사는 평범한 C로 작성된 마이크로 컨트롤러 장치에 레거시 펌웨어 프로젝트를 재사용하고 있습니다.
분명히 잘못되고 변경이 필요한 부분이 있으며 C # / TDD 배경에서 비롯됩니다. 기능이 변경되지 않은 상태로 유지되도록 테스트없이 무작위로 리팩터링하는 아이디어가 마음에 들지 않습니다. 또한, 버그를 찾기가 어렵다는 것이 아주 작은 변화 (회귀 테스트를 사용하면 해결 될 것이라고 생각되는 경우)를 통해 많은 경우에 발생하는 것으로 나타났습니다. 이러한 실수를 피하려면 많은주의를 기울여야합니다. 코드 주변의 여러 글로벌을 추적하기는 어렵습니다.
요약:
- 리팩토링하기 전에 밀접하게 결합 된 기존 코드에 단위 테스트를 어떻게 추가합니까?
- 어떤 도구를 추천하십니까? (더 중요하지는 않지만 알아두면 여전히 좋습니다)
나는이 코드를 작성하는 데 직접 관여하지는 않지만 (내 책임은 다양한 방법으로 장치와 상호 작용하는 응용 프로그램입니다), 좋은 프로그래밍 원칙을 사용할 수있는 기회가 남아 있다면 좋지 않을 것입니다.