vs2005와 vs2008을 동시에 지원하다보니..
설치후 devenv.exe를 실행시켜주는과정에서..
둘 중 하나가 설치되어있지 않으면 설치가 안되는 버그가 발견되어서..

급히 배포프로젝트를 nsis로 새로 만들어서 올렸습니다.
배포본만 다시 나가는거라 버전은 올리지 않았습니다.

레지스트리명을 바꿔서 테스트 해보니 정상작동하네요.

설치도 제대로 안되는걸 배포해서 죄송합니다;;;

ps. 덕분에 Download count가 0으로... orz;;

사용자 삽입 이미지
새버전이 배포되었습니다.
http://vutpp.googlecode.com 에서 받으시면 됩니다.

요즘 백수라 매일 집에서 놀다보니 VisualStudio를 실행시키기가 오히려 더 힘들어서 작업이 많이 늦어 졌습니다;;;
퇴직하면서 서류처리가 좀 많았고 요즘 취직관련해서 이리저리 알아보고 사람들 만나러 다니고 하느라 바쁜것도 있지만요;;
취직이 빨리 결정이 안되니 이래저래 스트레스군요;

우선 addin형태에서 패키지형태로 바뀌었습니다.
Addin형태는 VS버전별로 설치를 해야 해서 VisualStudio 2008지원이 추가 되면서 Program Files밑에 하나만 설치하도록 패키지 형태로 변경되었습니다.
근데 VC랑 연동하는 부분을 vs2005와 vs2008을 별도의 dll로 만들어서 리플렉션으로 연동을 해서 리프레쉬속도가 좀 느려졌습니다;;

그리고 툴바를 못찾는 분들이 많으셔서 VisualAssist처럼 메인 메뉴에 메뉴를 추가하였습니다.
사용자 삽입 이미지

그리고 위 메뉴에 있는 내용들을 keyboard shortcut을 설정할 수 있도록 추가하였습니다.
사용자 삽입 이미지

그리고 BindCode를 자꾸 바꾸게 되서(아마 0.4에서 또 바뀔듯;) 번거로우실거 같아서 배포본에 포함하였습니다. 설치폴더에 있는 BindCode들을 직접 프로젝트에 연결해서 사용하시면 편할실것 같습니다.
사용자 삽입 이미지

자세한 변경사항은 아래와 같습니다.

  •  issue 10 : add support VisualStudio 2008
  •  issue 7 : fix compiler.PreprocessorDefinitions problem
  •  issue 8 : add support winunit
  •  issue 11 : VUTPP cannot find TEST in Solution Folder
  •  issue 13 : Add support shortcut-key
  • convert project to VSPackage
  • Improve ReparseCurrentFile(for Navigate and Update List) to use thread
  • Add MenuBar?
  • change bind codes
  • 안타깝게도 debug기능이 들어가지 않았습니다.
    원래는 debug기능까지 추가하고 배포하려고 했는데 버그 수정된것들도 있는데 배포가 너무 늦어지는 것 같아서 먼저 배포했습니다.

    debug기능이 WinUnit을 추가하면서 좀 문제가 생겼네요.
    WinUnit은 내부에서 Test를 관리하는 내용이 없고 밖에서 외부로 노출되어 있는 모든 함수를 실행하게끔 되어 있어서 아무래도 WinUnit만 따로 예외처리하는 형식으로 처리해야 할 것 같습니다.

    그 외에는 오른쪽버튼 눌러서 팝업창 띄우는것 정도의 내용이 남았네요.

    이정도로 해서 0.4를 배포하고..

    그 다음은 CruiseControl.net지원이라던가.
    아마 안될것 같지만 VisualStudio 2003지원을 좀 살펴본다던가 하게 될거 같네요.
    패키지로 만들면 VisualStudio 2003이 될 줄 알았는데.. 안되는군요;;
    VisualAssist쪽을 보면 VS에 런칭하는 부분이 아예 따로 되어 있는것 같기도 합니다.

    전체적으로 다운버그 같은 것들은 많이 수정되었습니다만.
    문제가 있거나 필요하신 기능이 있으면 댓글로 달아주시기 바랍니다.

    VisualUnitTest++의 프로젝트 홈과 다운로드페이지를 변경하였습니다.;;

    아래글의 댓글에서 보이다 시피 레이옷의 꼬임에 넘어가 스프링 노트랑 kdlp모두 폐쇄하고 이전하였습니다.
    저는 왜이리 귀가 얇은 걸까요 orz

    이전 주소는 http://vutpp.googlecode.com 입니다
    그나저나 google의 wiki가 별로군요.
    으음..
    사실 커뮤니티를 이용하려는 목적보다는 파일 다운로드 카운팅-_-이 궁금해서 개설했습니다;
    그리고 댓글로만 대응 하는것 보다는 kldp의 포럼기능을 사용하는게 낫지 않을까 하는 생각도 있습니다.

    주소는 http://kldp.net/projects/vutpp/ 입니다.

    0.3버전은 작업이 줄줄 지연되고 있습니다;
    요즘 개인적인 일이 있어서 프로젝트를 진행하기 힘들군요.
    (시간이 없느냐.. 하면 시간은 남아돌지만 말입니다;;)

    예정하던 기능들을 뒤로 밀고 우선 디버깅이랑 WinUnit만 후딱 추가해서 배포해야겠습니다;

    사용자 삽입 이미지

    프로젝트 페이지 : http://code.google.com/p/vutpp/
    기본적인 사용방법은 프로젝트 페이지를 참고 하시면 되고 요청사항이나 버그신고는 가급적 프로젝트 페이지에 달아주세요.

    ---------------

    Support Frameworks
    • UnitTest++
    • CppUnitLite 
    • CppUnitLite2 
    • BoostTest 
    Version 0.2
    • Vista가 아닌 OS에서 Icon이 제대로 나오지 않는 버그 수정(Shell32.dll의 아이콘을 사용하도록 했는데 OS별로 아이콘내용이 달라서 생기는 문제였음, famfamfam.com의 무료아이콘을 포함하도록 변경)
    • dll프로젝트가 아닌경우 run을 지원하지 않도록 수정 
    • 주석외의 경우에 '/' 가 있을경우 그 이후의 코드가 인식되지 않는 버그 수정
    • Suite의 Icon 키 세팅이 되지 않아서 Run할 때 죽는 버그 수정 
    • 실행중에 ActiveConfiguration을 변경하는 경우 죽는 버그 수정 
    • RunTest의 return value가 정상적이지 않은 경우가 있어서 TestFailureCallback으로 feedback하도록 BindCode수정 
    • boost auto test지원 추가 - 정재원(all2one)님께서 도와주셨습니다.

      위의 로그에 써있지만 Bind코드가 수정되었습니다 ㅜ.ㅜ
      번거롭게 해드려서 죄송합니다;;;
    사용자 삽입 이미지

    프로젝트 페이지 : http://code.google.com/p/vutpp/
    기본적인 사용방법은 프로젝트 페이지를 참고 하시면 되고 요청사항이나 버그신고는 가급적 프로젝트 페이지에 달아주세요.

    ---------------

    요즘 휴가라 집에서 졸리면 자고 눈떠지면 깨고 일어나면 빈둥거리고;;
    하면서 틈틈히 작업이 진행되었습니다;

    처음 만들기 시작할 때는 GuiRunner정도로 간단히 생각하고 시작했는데 꽤 시간이 걸려버렸습니다.
    한달 반정도가 걸렸네요.

    원래 UnitTest++전용으로 만들다가 CppUnitLite, CppUnitLite2지원을 넣으면서 여러 프레임웍을 지원하게 구조변경이 되면서 작업이 꽤 딜레이 되었습니다;
    이게 다 레이옷때문입니다;;;;

    게다가 지원 프레임웍별 샘플 및 바인딩 소스 작업이 Library의 코드를 바꿔야 하는것들도 있어서 시간이 꽤 걸렸는데.
    이것도 사실 UnitTest++용은 테스트를 해야 하니 당연히; 작업이 다 되어있는 상태였는데.
    CppUnitLite, CppUnitLite2용 샘플 및 바인딩 소스 작업 & Library수정 코드 작성..때문에 꽤 딜레이 되었습니다.
    이게 다 레이옷때문입니다;;;;

    멀티 프레임웍을 지원하게끔 되었지만
    이 시리즈들 말고 다른것들(CppUnit, CxxTest, boost::UnitTest등)은 작업이 불가 할 것 같습니다.
    다른것들의 경우는 함수를 작성해서 등록을 하는 형태라 파싱을 해볼려고 했더니 너무 복잡해지더군요-_-
    제가 쓸것도 아닌데 굳이 저 복잡한 내용을 손 댈 생각은 없습니다;;;

    가장! 중요하다고 생각하고 있던 메인아이콘-_-! 작업을 버리면서 배포일정이 많이 빨라졌습니다;;

    PS. Addin이다 보니 버그가 있어서 죽는경우는 VisualStudio가 뻗어버립니다;;
    참고로 저는 TDD를 안하므로 사용자분들의 상세한-_- 버그 리포팅을 기대합니다;;
    사용자 삽입 이미지

    대략 이런 모습입니다.
    순조롭게 지연될거라는 예상과는 달리 별달리 지연이 안되고 있습니다-ㅅ-;
    이 페이스로 가면 난데없이 연말에 나와버릴것 같습니다;;;

    네비게이션에 dll 바인딩해서 실행하고 결과 받는것까지 다 했으니..
    남은건 순차적으로 실행시켜서 진행상황 표시하는거랑 배포 프로젝트 만드는것밖에 안남았습니다;;
    큰일입니다; 이렇게 빨리 진행될 예정이 아니었는데 말이죠;;

    요즘 UnitTest++용 VisualStudioAddin을 만들고 있는중입니다.
    전에도 말했지만 UnitTest는 별로 쓰지도 않으면서 쓸데없는데 시간쓰고 있는 쑥갓군입니다;;

    이름을 UnitTestIDE로 할지 VisualUnitTest++로 할지 고민중입니다;;;
    개인적으로는 UnitTestIDE는 ++이 붙일데가 마땅치 않고 약자쓰기도 VUT가 조금 더 나은것 같습니다;
    누가 좀 골라주삼;;

    어쨋건 Addin프로그래밍도 처음해보는데다가 C#으로 만들고 있는지라 삽질이 이만저만이 아닙니다.
    C#은 첨 나왔을때 공부용으로 좀 보고 제대로 해보기는 처음이네요.

    익숙치 않은 .NET 라이브러리 때문에 몇번이나 확 버리고 C++로 다시 시작할까...하다가 C++은 COM접근할때의 그 번거로움 때문에 꾿꾿히 C#으로 버티고 있는중입니다;;

    게다가 C++로 만들면 설정저장하는 용도로 XML쓰려면 원래 쓰는건 업무용이니까 안되고 새로 만들려니 그게 더귀찮아서 사실은 XML때문에 C#쓰고 있습니다-_-;;

    그래도 확실히 툴프로그램은 C#이 간편하기는 합니다;
    하지만 C++테스트를 실행시켜야 되서 결국은 사용자의 Test DLL을 불러다가 Test를 실행시켜주는 실행용 C++ DLL이 하나 더 필요해져 버렸습니다.(귀찮아라;;;) 결국은 .Addin파일과 설정파일(이건 배포는 안해도 되는 파일이지만)을 포함해서 파일 4개가 되겠네요.

    위에 살짝 언급했지만 외부에서 실행시키는거라 DLL로 Test프로젝트를 만드셔야 합니다;
    DLL이 아닌경우도 Navigate는 지원할 예정입니다;
    테스트 프로젝트 유무판단이 Linker Option으로 해서 StaticLib는 지원안될듯합니다;
    혹시 꼭 StaticLib가 필요하신분이 있으시다면 고민해보겠습니다-ㅅ-;;

    일단은 다이얼로그 띄우고 VisualStudio에 연결하고 소스 파싱해서 Suite와 Test리스트 만들고 툴팁으로 파일명이랑 라인보여주고 더블클릭해서 소스로 가는 정도까지는 작업이 되었고, 프로젝트나 파일이 새로 추가된다거나 하는 이벤트 처리들을 하고 있습니다.
    실시간으로 편집되는것들에 대한 상황들을 처리하려니 처리할 상황이 꽤 많네요.. 머 파일 편집하다말고 저장안하고 닫아-_-버린다던가;;

    그 다음은 커서위치 추적해서 리스트에서 Navigate해주는 기능이랑 실행용 DLL만들어서 실제 실행시키는 부분, 아이콘 붙이기-_-;;, 기본 설정 저장, 솔루션별 체크항목들 저장... 정도가 기능적으로는 남은 내용들이네요;;
    써놓고 나니 아직 한참남았네요-ㅅ-;;;

    그 외에는 설치프로젝트 만들고, Project Wizard만들고(이부분이 젤 삽질할거 같은 부분-_-)등등이 기능외;; 남은 부분이네요;

    목표는 연내배포-_-;;; 이지만 또 어떻게 될지 모르겠습니다;;;;;
    작업이 순조롭게 지연되면;; 내년 1월에나 나올지도;;;;

    뭐 GuiRunner과 마찬가지로 소스는 공개예정입니다.
    다행히 GuiRunner는 생각과는 달리 아무도 개선요청같은 걸 안해주셔서(아무도 안쓰는건가-_-;;;;) 안심하고 대충만들고 있습니다-_-;

    참고로 위에 열거된 내용외의 필요하신 사항 미리 말씀해주시면 만드는김에 같이 만들지도 모릅니다;(장담은 못합니다-_-)
    배포해버리고 나면 귀찮아서 다시 안열어 볼지도-_-;;;

    사실 저희팀이 UnitTest를 별로 안쓰는데다가 옆에 서버팀은 boost의 UnitTest를 쓰고 있어서 개선요청 받을데가 없습니다;;
    저 옆에 UnitTest많이 쓰는 친한 회사는 CppUnitLite2를 쓰고 있고;;;;

    'UnitTest' 카테고리의 다른 글

    VisualUnitTest++ WinUnit지원예정  (5) 2008.01.22
    VisualUnitTest++ 0.2 release  (7) 2008.01.15
    VisualUnitTest++ 0.1 release  (27) 2008.01.04
    VisualUnitTest++ 진행상황  (4) 2007.12.14
    UnitTest++용 GuiRunner 0.20업데이트  (10) 2007.11.18

    sp1이 나오면서 이리저리 꼬이면서
    결국은 설치시에 redist파일을 같이 설치해버리는 방식으로 결정;;
    그냥 내보냈더니 안되는 컴퓨터들이 있어서-.ㅜ

    http://msdn2.microsoft.com/en-us/library/ms177194.aspx

    gpg에 답변달다가 홈피에도 없는것 같길래 포스팅
    boost를 대체할수 있는 기본 키워드들이 꽤 있다.
    컴파일러에서 처리를 해주니 왠지 boost보다 가볍지 않을까...하는 느낌..

    '자료 > Article' 카테고리의 다른 글

    Utilities for STL std::string  (1) 2007.03.27
    /ENTRY(진입점 기호)  (2) 2007.03.01
    Subversion(SVN)과 Mantis의 연동  (2) 2007.01.05
    라그나로크2 클라이언트 분석  (2) 2006.12.31
    [펌] 디스크 캐쉬 제대로 알기  (2) 2006.12.29

    + Recent posts