У меня возникла проблема при попытке запустить набор тестов VS10 через OpenCover, используя mstest в качестве целевого приложения. Запуск тестов непосредственно с помощью MsTest работает с этой командой:
"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe" /resultsfile:"<application_root_path>\UnitTestResults\MyProject.vsmdi.trx" /testmetadata:"MyProject.vsmdi" /testlist:"ServiceTests" /testlist:"DatabaseTests"
Однако при попытке запустить ту же команду под OpenCover, вот так:
OpenCover\Opencover.console.exe -register:user -target:"C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe" -targetargs:"/resultsfile:"<application_root_path>\UnitTestResults\MyProject.vsmdi.trx" /testmetadata:"MyProject.vsmdi" /testlist:"ServiceTests" /testlist:"DatabaseTests"" -output:<application_root_path>\UnitTestResults\Coverage
он терпит неудачу со следующей ошибкой, касающейся файла .vsmdi.trx (который, как я понимаю, должен быть создан MsTest после запуска тестов):
Error occurred while loading document '<application_root_path>\UnitTestResults\MyProject.vsmdi.trx'.
Code: 0x800c0006
The system cannot locate the object specified.
Таким образом, в основном он жалуется, что не может найти файл результатов перед запуском тестов, но этот файл должен быть создан в конце запуска.
Может ли это быть проблемой, связанной с OpenCover, так как те же параметры работают при прямом запуске с mstest?
Я проверил свои пути, и все они работают, даже тот, что в ошибке, это путь, по которому файл должен быть сгенерирован mstest.
Спасибо.