| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- param(
- [string]$BaseUrl = "http://127.0.0.1:4301"
- )
- $ErrorActionPreference = "Stop"
- $reportDir = Join-Path $PSScriptRoot "reports"
- $logFile = Join-Path $reportDir "auto_test_log.txt"
- $summaryFile = Join-Path $reportDir "auto_test_summary.txt"
- New-Item -ItemType Directory -Path $reportDir -Force | Out-Null
- $oldErrorActionPreference = $ErrorActionPreference
- $ErrorActionPreference = "Continue"
- $output = powershell -ExecutionPolicy Bypass -File "$PSScriptRoot\servicepilot-ui-flow.ps1" -BaseUrl $BaseUrl 2>&1
- $exitCode = $LASTEXITCODE
- $ErrorActionPreference = $oldErrorActionPreference
- $ansiPattern = "$([char]27)\[[0-9;]*m"
- $textOutput = $output | ForEach-Object { $_.ToString() -replace $ansiPattern, "" }
- $textOutput | Set-Content -Path $logFile -Encoding UTF8
- $textOutput | ForEach-Object { Write-Host $_ }
- $result = "PASS"
- if ($exitCode -ne 0) {
- $result = "FAIL"
- }
- @(
- "ServicePilot 自动化测试执行记录",
- "执行时间:$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss')",
- "测试地址:$BaseUrl",
- "测试范围:dashboard、tickets、sla、knowledge、files、reviews、test-plan 七个前端页面",
- "预期标准:页面 HTTP 200、截图文件生成成功、截图大小大于 10KB",
- "执行结果:$result",
- "详细日志:$logFile",
- "截图与 JSON 结果:$(Join-Path $PSScriptRoot 'artifacts')"
- ) | Set-Content -Path $summaryFile -Encoding UTF8
- Write-Host "自动化测试日志已生成:$logFile"
- Write-Host "自动化测试摘要已生成:$summaryFile"
- if ($exitCode -ne 0) {
- exit $exitCode
- }
|