2014-10-22 3 views
0

구문 정확성 스크립트 언어로 작성된 프로젝트의 모든 코드 경로를 확인, 내가 자세하게이 질문은 동적으로 해석하는 코드를 적용

를 추측

내가 데이터 처리 프로젝트의 집합을 말해봐 tools이라는 공통 모듈에 의존합니다. 개발의 길을 걷다가 tools에서 함수 또는 메서드 중 하나의 인터페이스를 변경하려고합니다.

이 인터페이스 변경은 이전 버전과 완전히 호환되지 않을 수 있으며, 데이터 처리 프로젝트의 하위 집합을 손상시킬 수 있습니다.

관련된 모든 소프트웨어를 컴파일해야한다면 간단히 모든 것을 다시 컴파일 할 수 있으며 컴파일러는 새 서명에 호출 코드를 적용해야하는 부분을 지적합니다. 그러나 이것이 해석 된 상황에서 어떻게 할 수 있습니까?

TL; DR

스크립트 프로그램 세트는 스크립트 모듈에 의존한다. 하위 인터페이스와 호환되지 않는 방식으로 모듈의 인터페이스를 변경 한 후, 종속 프로그램을 확인하고 새 인터페이스와 호환되도록하려면 어떻게해야합니까?

+1

그래서 테스트를 작성해야합니다. – BroiSatse

+0

필자는 보통 컴파일러를 사용하여 구문의 정확성을 테스트합니다. 체계적인 방법으로 언어 스크립팅을 수행하는 방법은 무엇입니까? – Sh4pe

+1

루비에서는 TDD가 있어야합니다. 높은 테스트 커버리지를 확보하면 테스트 스위트를 실행할 때 모든 단일 코드 행이 실행됩니다. 루비에는 컴파일러가 없습니다. 파서는 누락 된 끝, 대괄호 또는 이와 유사한 문제 만 제기합니다. 파서가 메소드가 존재하는지 여부를 말할 수 없으므로 (아직 존재하지 않지만 미래에 존재하거나 심지어 method_missing 로직을 트리거 할 수도 있기 때문에) 테스트가 유일한 방법입니다. – BroiSatse

답변

1

최상의 답은 '쓰기 테스트'입니다. 설명하는 것처럼 존재하지 않는 함수를 호출하는 것과 같이 일부 코드 정확성을 사용하여 구문 검사를 수행하는 경우에는 pylint이 아마도 가장 좋은 도구 일 것입니다. pip install pylint으로 설치하십시오.

관련 문제