Powershell-调用SQLCmd:如何检查结果

Powershell-调用SQLCmd:如何检查结果,powershell,invoke-sqlcmd,Powershell,Invoke Sqlcmd,我正在创建一个脚本,它将在部署QA之前在开发服务器上执行tSQLt单元测试-这是持续集成的一部分 以下是我的Powershell脚本: param( [Parameter(Mandatory=$true)][string]$DatabaseName , [Parameter(Mandatory=$true)][string]$UserName , [Parameter(Mandatory=$true)][string]$Password ) 控制台中的输出为: 输出到文本文件的(详细)结果如

我正在创建一个脚本,它将在部署QA之前在开发服务器上执行tSQLt单元测试-这是持续集成的一部分

以下是我的Powershell脚本:

param(
[Parameter(Mandatory=$true)][string]$DatabaseName
, [Parameter(Mandatory=$true)][string]$UserName
, [Parameter(Mandatory=$true)][string]$Password
)

控制台中的输出为:

输出到文本文件的(详细)结果如下所示:

在触发下一步之前,我们必须确保所有单元测试都通过,因此输出结果文件中不能出现单词
Failure
,控制台输出中也不能出现单词
failed


我如何检查它,或者是否有更好、更正确的方法来执行此操作?

仅从控制台输出进行假设,目前无法对其进行测试,但try-catch块可以工作

try {
    Invoke-Sqlcmd ...
}
catch {
    # Output a error and exit script?
}

最后,您需要向Invoke Sqlcmd添加一个-ErrorAction停止。

仅从控制台输出进行假设,目前无法测试它,但try-catch块可以工作

try {
    Invoke-Sqlcmd ...
}
catch {
    # Output a error and exit script?
}

最后,您需要在Invoke Sqlcmd中添加一个-ErrorAction Stop。

问题是始终存在一个响应,我需要检查响应中的“Failure”一词。问题是始终存在一个响应,我需要检查响应中的“Failure”一词