2013-03-08 4 views
1

이것은 매우 일반적인 질문입니다. Visual Studio 2010에서 모르는 도구 나 트릭을 찾고 싶습니다.복잡한 응용 프로그램에서 버그 찾기

짧게 요약하자면, 저는 회사를 위해 매우 큰 회계 응용 프로그램을 인계 받고 있습니다. 문서에 주석이없고 코드에 주석이 드물습니다. 또한 나는 이전 개발자들에게 접근 할 수 없다. 그들은 즉시 해결할 필요가있는 버그가 있습니다. 기본적으로 음수가 데이터베이스에 나타나며 그 수는 양수 여야합니다. 아무도 애플 리케이션에서 계산이 일어나고 있는지 또는 데이터가 실제로 데이터베이스에 쓰여지고 있는지 알지 못한다. 어떤 수업/기능이 이것을하고 있는지 파악하는 것까지 아무도 뛰어 내리지 못합니까? 모든 코드 행을 단계별로 실행하면서 데이터베이스를 볼 수는 있지만 며칠이 걸릴 수 있습니다.

+0

특정 답변을 제공하기에는 너무 모호하지만 VS에서 "찾기"를 시도하여 원본에서 해당 테이블 이름이나 열 이름을 찾으려고 했습니까? 열 이름/테이블 이름을 찾았 으면 포함 된 방법의 사용법을 검색합니다. ORM에있는 경우 POCO 또는 이와 유사한 사용법을 검색합니다.이 방법을 사용하면이 방법을 쉽게 추적 할 수 있습니다. –

+1

열 SP에서 SP를 찾을 수 있습니다. syscomments에서이 T-SQL select *를 사용하여 SP를 찾을 수 있습니다. '% column-name %'AND ('% update %'또는 '% insert %'와 같은 텍스트) ve는 SP 이름을 찾은 다음 VS에서 찾기를 사용하여 어디에서 전화했는지 찾을 수 있습니다. –

+0

감사합니다. 문제의 일부는 데이터가 코드에서 직접적으로가 아니라 SP 또는 트리거 (수백 가지가 있음)에서 나올 수 있다는 것입니다. –

답변

0

당신이 듣고 싶은 대답은 아니지만 반복성이 있다면 이진 검색과 같이 접근 할 수 있습니다.

  1. 값이 변경 될 때까지 단계별 절차를 수행하십시오.
  2. 값을 변경 한 프로 시저를 다시 실행하고 단계별로 변경하십시오.
  3. 고토 1.

프로

  • 당신이 그것에 대해 생각하지 않는 그 일을하면서이 일을하지 않습니다

    • 내가 놀랄 것입니다 당신이 이것을 몇 번이나 반복 한 후에 발견하지 못했다면.

    단점

    • 재미없는 전혀 할 수 있습니다.
  • +0

    감사합니다. 이것은 나의 유일한 의지일지도 모른다. –

    +0

    추가 질문 : 디버깅하는 동안 데이터베이스 열을 모니터링하는 가장 좋은 방법은 무엇입니까? 나는 코드의 새로운 부분을 밟을 때마다 select 문을 새로 고치거나 다시 실행해야한다는 것을 싫어한다. –

    +0

    얼마나 많은 에너지를 소비 할 것인가에 따라, 루프에서 선택을 실행하는 것 이상의 작업을 수행하는 작은 (콘솔) 앱이나 스크립트를 작성하고 변경이 감지되면 메시지 상자를 표시 할 수 있습니다. 따라서 수동으로 새로 고침을하지 않아도되지만 새로 고침의 정밀도를 "코드 속도를 단계별로"조정하는 것보다 작게 설정해야합니다. –

    관련 문제