2011-01-13 34 views
6

Tôi đang cố gắng để tìm ra là các đối số dòng lệnh được sử dụng bởi Visual Studio khi bạn chạy các bài kiểm tra MSTest, tôi đoán nó bắt đầu với:Đối số dòng lệnh nào Visual Studio sử dụng để chạy MsTest?

MSTest.exe /testmetadata:%SolutionName%.vsmdi /testlist: 

Nhưng tôi không thể tìm ra cách để lấp đầy tham số danh sách kiểm tra, bởi vì cả tên và id danh sách kiểm tra đều nhận được lỗi sau:

The test list path 8c43105b-9dc1-4917-a39f-aa66a61bf5b6 cannot be found. 
An error occurred while executing the /testlist switch. 

Trả lời

8

I'm trying to figure out which is the command line arguments used by Visual Studio when you run the MsTest tests

Nó phụ thuộc vào làm thế nào để bạn chạy thử nghiệm của bạn từ Visual Studio. Xem các ví dụ sau:

  1. Bạn đang chọn một số xét nghiệm từ Test View cửa sổ và chạy chúng

    MSTest.exe /testcontainer:TestProject.dll /test:TestMethod1 /test:TestMethod2 ... 
    
  2. của bạn đang chạy tất cả các bài kiểm tra từ Test View cửa sổ

    MSTest.exe /testcontainer:TestProject.dll 
    
  3. Bạn đã lọc các bài kiểm tra của mình theo danh mục qua cửa sổ Test View và chạy danh mục này

    MSTest.exe /testcontainer:TestProject.dll /category:CategoryName 
    
  4. Bạn đã mở file *.vsmdi và chọn một số TestLists để chạy

    MSTest.exe /testmetadata:*.vsmdi /testlist:TestList1 /testlist:TestList2 ... 
    
  5. Bạn đang chạy Load hoặc kiểm tra Ordered

    MSTest.exe /testcontainer:LoadTest1.loadtest /testcontainer:OrderedTest1.orderedtest 
    

Bạn có thể kết hợp ở trên ví dụ (đối số) để tạo lệnh MSTest phù hợp với trường hợp của bạn. Hạn chế duy nhất bạn có là bạn không thể sử dụng các đối số /testmetada/testcontainer cùng nhau.

Đối với đối số TestList bạn chỉ cần đặt làm tham số tên của danh sách. Nếu nó không được tìm thấy thì danh sách kiểm tra của bạn không tồn tại hoặc nó không thuộc về *.vsmdi bạn đã xác định trên đối số /testmetadata.

Tôi chắc chắn rằng bạn đã thực hiện, nhưng bạn có thể kiểm tra liên kết sau: MSTest.exe Command-Line Options

0

Xem sau link. Mặc dù bài đăng này là về msbuild. Nó sử dụng nhiệm vụ exec để gọi mstest. Nếu bạn sử dụng/testlist, bạn cần cung cấp tệp siêu dữ liệu. Bạn có thể sử dụng/testcontainer và cung cấp dll cho dự án thử nghiệm của bạn. Nó sẽ chạy tất cả các bài kiểm tra của bạn.

/testcontainer:[file name]  Load a file that contains tests. You can 
           Specify this option more than once to 
           load multiple test files. 
           Examples: 
           /testcontainer:mytestproject.dll 
           /testcontainer:loadtest1.loadtest 
Các vấn đề liên quan