2013-06-04 4 views
7
साथ MSTest कॉलिंग

मुझे कोई सफलता के साथ दृश्य स्टूडियो के उपकरण MSTest PowerShell से निष्पादित करने के लिए कोशिश कर रहा हूँ:Powershell

$testDLL = "myTest.dll" 
$mstestPath = "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\mstest.exe"  
$arguments = " /testcontainer:" + $testDLL + " /test:UnitTest1" 

Invoke-Expression "$mstestPath $arguments" 

मैं इस त्रुटि मिलती है: "शब्द '86' एक cmdlet का नाम के रूप में मान्यता प्राप्त नहीं है , समारोह, ... " कोई विचार? धन्यवाद।

संपादित करें:

ठीक है, समस्या का उपयोग कर "&" के बजाय "आह्वान-अभिव्यक्ति" और प्रत्येक तर्क के लिए अलग चर बनाने, इसके लिए मुझे सिर्फ दोनों एक वर में का उपयोग कर काम नहीं करता है हल किया गया था:

$testDLL = "myTest.dll" 
$mstestPath = "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\mstest.exe"  
$argument1 = "/testcontainer:" + $testDLL 
$argument2 = "/test:UnitTest1" 

& $mstestPath $argument1 
+2

संबंधित: http://stackoverflow.com/questions/3868342/running-an-exe-using-powershell-from-a-directory-with-spaces-in-it –

+0

"C: \ प्रोग्राम फ़ाइलें (x86) "में एक स्थान है इसलिए अपनी स्ट्रिंग '$ mstestPath ='" सी: \ प्रोग्राम फ़ाइलें (x86) \ ... \ IDE \ mstest.exe "'' –

उत्तर

7

मैं मामले में & ऑपरेटर का उपयोग करने की सलाह दूंगा (टिप्पणी डेविड ब्रेबेंट देखें)।

हालांकि, अगर आपको Invoke-Expression का उपयोग करना होगा तो आप $mstestPath को इसके शॉर्टपाथ समकक्ष में परिवर्तित कर सकते हैं।

$testDLL = "myTest.dll" 
$fs = New-Object -ComObject Scripting.FileSystemObject 
$f = $fs.GetFile("C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\mstest.exe") 
$mstestPath = $f.shortpath 
$arguments = " /testcontainer:" + $testDLL + " /test:UnitTest1" 
Invoke-Expression "$mstestPath $arguments" 
+2

अच्छा उत्तर में उद्धरण जोड़ें। क्या आपको कोई विचार है कि परिणाम कैसे पार्स करें? –

+1

परिणाम परिणाम फ़ाइल का उपयोग करके आप परिणामों को एक trx फ़ाइल में निर्यात करते हैं: '/ resultsfile: c: \ temp \ test.trx' तो आप trx फ़ाइल को पार्स कर सकते हैं: http://dbarrowstechblog.blogspot.com.au/2012/ 08/parsing-mstest-results-trx-files.html? _sm_au_ = iNVjjVLrnLPWRJ0j '' या http://www.c-sharpcorner.com/UploadFile/e06010/read-trx-file-from-C-Sharp/ –