Bạn chính xác ở chỗ không có API công khai cho khung mstest. Tôi đã viết một thay thế thủ công cho mstest một ngày để xem nó cứng như thế nào, và nó không đơn giản như nó trông (đặc biệt nếu bạn muốn tận dụng nhiều hơn một lõi CPU), vì vậy hãy cẩn thận đi xuống con đường này.
Cá nhân tôi luôn chạy mstest.exe
theo cách lập trình và sau đó phân tích cú pháp tệp kết quả .trx
XML. Có lý do cụ thể nào khiến bạn không thể sử dụng Process.Start
để chạy không?
P.S. Một số hành vi kỳ lạ của MSTest.exe được giải quyết nếu bạn vượt qua các tham số dòng lệnh /noisolation
- cho rằng một đi nếu bạn cảm thấy nghiêng như vậy :-)
Cập nhật: Erik đề cập đến ông muốn chạy API kiểm tra trong chuỗi hiện tại để anh có thể đặt văn bản chuỗi cho các vấn đề toàn cầu hóa.
Nếu bạn chạy thử nghiệm đơn vị trong trình gỡ rối, bạn sẽ nhận thấy rằng mstest tạo một chuỗi chủ đề và chạy tất cả các thử nghiệm của bạn trong các chuỗi khác nhau, vì vậy điều này không có khả năng hoạt động ngay cả khi bạn có thể truy cập API .
Những gì tôi muốn đề nghị làm điều này là: ứng dụng "Á hậu"
- Từ thử nghiệm của bạn, thiết lập một biến môi trường
- Run MSTest trỏ nó vào các bài kiểm tra cụ thể
- Thêm một
[ClassInitialize]
(hoặc [TestInitialize]
) phương pháp đọc biến môi trường này và đặt văn hóa
- Lợi nhuận!
Nguồn
2010-04-07 20:52:08
Trùng lặp http://stackoverflow.com/questions/1564681/running-vsts-tests-without-mstest-exe –
Điều này cũng khiến tôi khó chịu, vì vậy tôi đã nêu lên 'yêu cầu bằng giọng nói của người dùng'. Nếu bạn đang đọc điều này, và cảm thấy mạnh mẽ, bạn có thể bỏ phiếu cho nó? https://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/4619858-mstest-api –