2013-05-01 17 views
6

Tôi có giải pháp Visual Studio 2012 C++ được tạo bằng CMake, trong đó tôi sử dụng kiểm tra google để kiểm tra đơn vị. Điều này làm việc chủ yếu là tốt, nhưng trong một bài kiểm tra của tôi, tôi muốn đọc một tập tin cài đặt từ một thư mục địa phương. Để tìm các tập tin sao chép các tập tin như một bài build bước từ cây mã nguồn của tôi để xây dựng và cài đặt thư mục bằng cách sử dụng CMake sau lệnh:Thư mục làm việc để kiểm tra google trong Visual Studio

install(FILES ./adapters/settingFile.txt DESTINATION .) 
add_custom_command(TARGET testAdapters POST_BUILD 
    COMMAND "${CMAKE_COMMAND}" -E copy 
    "${CMAKE_CURRENT_SOURCE_DIR}/adapters/settingFile.txt" 
    "${CMAKE_CURRENT_BINARY_DIR}" 
    COMMENT "Copying elastix parameter files") 

này hoạt động tốt: sau khi xây dựng thử nghiệm của tôi các settingFile.txt là trong cùng một vị trí như testAdapters.exe. Sử dụng một nhấp chuột phải vào dự án testAdapters và bắt đầu một phiên Debug cũng hoạt động tìm thấy. Tuy nhiên, nếu tôi chọn chạy thử nghiệm từ bên trong cửa sổ "Test Explorer", hoặc bằng "Run All" hoặc bằng cách nhấp chuột phải vào kiểm tra và chọn "Run selected tests", kiểm tra không thể tìm thấy settingsFile.txt. Bằng cách nhấp chuột phải và chọn "Gỡ lỗi các bài kiểm tra đã chọn" Tôi thấy rằng chạy thử nghiệm từ "Test Explorer" thư mục làm việc mặc định cho thư mục chương trình phòng thu trực quan: C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE. Tôi có thể nghĩ đến một số giải pháp có thể, nhưng không biết làm thế nào để đạt được điều này:

  1. Đặt thư mục làm việc cho "Test Explorer"
  2. Đặt thư mục làm việc cho mỗi bài kiểm tra thực thi
  3. Đặt thư mục làm việc cho tất cả các thử nghiệm google
  4. Sử dụng CMake đặt một số xác định trỏ đến vị trí được người dùng chỉ định và sử dụng vị trí đó trong mã thử nghiệm. (Tôi coi đây là một giải pháp khá xấu)

Tôi cần một giải pháp độc lập với nền tảng. Có ai biết làm thế nào để đạt được (1) hoặc (2) hoặc bạn có biết một giải pháp tốt hơn?

Trả lời

0

Với phiên bản hiện tại 0.12.3 của GTA bạn ít nhất có thể đạt được (1):

  1. cụ
  2. Tùy chọn
  3. Google thử nghiệm Adapter (hoặc sử dụng tùy chọn tìm kiếm)
  4. chung
  5. Thư mục hoạt động (ở dưới cùng)

Thật không may G TA dường như chỉ hỗ trợ $(ExecutableDir) (mặc định) và $(SolutionDir). Dường như GTA không thể nói dự án nào là dự án thử nghiệm đơn vị, do đó không thể sử dụng thư mục dự án làm thư mục bắt đầu.

Screenshot of GTA options dialog

Các vấn đề liên quan