Octopus.Script exported 2015-04-30 by bobjwalker belongs to ‘Tests’ category.
This Step template should be used for running MSTests by passing list of assemblies.
Parameters
When steps based on the template are included in a project’s deployment process, the parameters below can be set.
Ms Test Path
MsTestExePath
null
Working directory
MsTestWorkingDirectoryPath
The folder that contains the test assemblies. Generally this will be bound to an output variable from a previous step. Example: #{Octopus.Action[Deploy integration tests].Output.Package.InstallationDirectoryPath}
Test assemblies
MsTestAssemblies
A semicolon-separated list of assembly names containing tests. Example: MyCompany.IntegrationTests.dll; MyCompany.SmokeTests.dll
Script body
Steps based on this template will execute the following PowerShell script.
Write-Output "Running MsTests tests..."
$exePath = '"' + $MsTestExePath + '"'
if (-not $exePath) {
$exePath = "mstest.exe"
}
$runMsTest = "& $exePath "
$MsTestAssemblies.Split(";") | ForEach {
$asm = " /testcontainer:"+$_.Trim()
Write-Output "Including test container assembly $asm"
$runMsTest += "$asm"
}
Write-Host $runMsTest
cd $MsTestWorkingDirectoryPath
Write-Host $MsTestWorkingDirectoryPath
iex $runMsTest
$mstestExit = $lastExitCode
exit $mstestExit
Provided under the Apache License version 2.0.
To use this template in Octopus Deploy, copy the JSON below and paste it into the Library → Step templates → Import dialog.
{
"Id": "75746f93-6c2b-4a52-b3b6-97e8dee09a81",
"Name": "Run MSTests",
"Description": "This Step template should be used for running MSTests by passing list of assemblies.",
"Version": 14,
"ExportedAt": "2015-04-30T12:44:24.644+00:00",
"ActionType": "Octopus.Script",
"Author": "bobjwalker",
"Parameters": [
{
"Name": "MsTestExePath",
"Label": "Ms Test Path",
"HelpText": null,
"DefaultValue": null,
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Name": "MsTestWorkingDirectoryPath",
"Label": "Working directory",
"HelpText": "The folder that contains the test assemblies. Generally this will be bound to an output variable from a previous step. Example: _#{Octopus.Action[Deploy integration tests].Output.Package.InstallationDirectoryPath}_",
"DefaultValue": null,
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
},
{
"Name": "MsTestAssemblies",
"Label": "Test assemblies",
"HelpText": "A semicolon-separated list of assembly names containing tests. Example: _MyCompany.IntegrationTests.dll; MyCompany.SmokeTests.dll_",
"DefaultValue": null,
"DisplaySettings": {
"Octopus.ControlType": "SingleLineText"
}
}
],
"Properties": {
"Octopus.Action.Script.ScriptBody": "Write-Output \"Running MsTests tests...\"\n\n$exePath = '\"' + $MsTestExePath + '\"'\nif (-not $exePath) {\n $exePath = \"mstest.exe\"\n}\n\n$runMsTest = \"& $exePath \"\n\n$MsTestAssemblies.Split(\";\") | ForEach {\n $asm = \" /testcontainer:\"+$_.Trim()\n Write-Output \"Including test container assembly $asm\"\n $runMsTest += \"$asm\"\n}\nWrite-Host $runMsTest\ncd $MsTestWorkingDirectoryPath\nWrite-Host $MsTestWorkingDirectoryPath \n\niex $runMsTest\n$mstestExit = $lastExitCode\n\n\nexit $mstestExit",
"Octopus.Action.Script.Syntax": "PowerShell"
},
"Category": "Tests",
"HistoryUrl": "https://github.com/OctopusDeploy/Library/commits/master/step-templates//opt/buildagent/work/75443764cd38076d/step-templates/run-mstest.json",
"Website": "/step-templates/75746f93-6c2b-4a52-b3b6-97e8dee09a81",
"Logo": "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",
"$Meta": {
"Type": "ActionTemplate"
}
}
Page updated on Thursday, April 30, 2015