После прочтения и экспериментирования доступных постов в переполнении стека я задаю этот вопрос.
Я пытаюсь вызвать MSTEST в powershell
Вот моя попытка (очевидно, с помощью сообщений, доступных в переполнении стека)
$testDLL = "C:\Automation\Tests\My.Tests.dll"
$fs = New-Object -ComObject Scripting.FileSystemObject
$f = $fs.GetFile("C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe")
$vstestPath = $f.shortpath
$arguments = " " + $testDLL + ' /TestCaseFilter:"TestCategory=FunctionalTests"'
Write-Host $arguments
& $vstestPath $arguments
Вывод на консоль:
PS C:\Users\myuser\Desktop\Powershell scripts> .\exp5.ps1
C:\Automation\Tests\My.Tests.dll /TestCaseFilter:"TestCategory=FunctionalTests"
Microsoft (R) Test Execution Command Line Tool Version 15.9.1
Copyright (c) Microsoft Corporation. All rights reserved.
VSTEST~1.EXE : The test source file "C:\Automation\Tests\My.Tests.dll /TestCaseFilter:TestCategory=FunctionalTests" provided was not found.
At C:\Users\myuser\Desktop\Powershell scripts\exp5.ps1:7 char:1
+ & $vstestPath $arguments
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (The test source... was not found.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
Usage: vstest.console.exe [Arguments] [Options] [[--] <RunSettings arguments>...]]
Description: Runs tests from the specified files.
Arguments:
[TestFileNames]
Run tests from the specified files. Separate multiple test file names
.
.
.
. etc
Если я запускаю в обычном приглашении Windows cmd, тогда тесты запускаются без проблем, но когда я пытался вызвать ошибку powershell, получая вышеуказанную ошибку.
Может кто-нибудь помочь мне, что не так с моимсценарий.
Если мой сценарий сложный или не имеет смысла, пожалуйста, извините меня, поскольку я новичок в powershell.Моя цель - использовать вышеуказанный скрипт powershell в пошаговом процессе Octopus Deploy для запуска тестов.Если кто-нибудь знает простой или лучший способ сделать это, пожалуйста, поделитесь ...
Спасибо