Automatizar testes no Windows é uma prática essencial para garantir estabilidade, segurança e desempenho de sistemas e aplicações. PowerShell e scripts .bat oferecem uma forma poderosa e flexível de executar testes repetitivos com agendamento, registro e controle de erros.
🧪 Exemplos de Testes Automatizados com PowerShell
1. Testar Conectividade de Rede
$host = "google.com"
if (Test-Connection -ComputerName $host -Count 2 -Quiet) {
Write-Host "Conexão com $host OK"
} else {
Write-Host "Falha na conexão com $host"
}
2. Verificar se um Serviço Está em Execução
$servico = Get-Service -Name "Spooler"
if ($servico.Status -eq "Running") {
Write-Host "Serviço Spooler está ativo"
} else {
Write-Host "Serviço Spooler está parado"
}
3. Validar Existência e Integridade de Arquivos
$arquivo = "C:\Testes\log.txt"
if (Test-Path $arquivo) {
$hash = Get-FileHash $arquivo
Write-Host "Arquivo existe. Hash: $($hash.Hash)"
} else {
Write-Host "Arquivo não encontrado"
}
🧾 Script em Lote para Executar Testes PowerShell
@echo off
echo Iniciando testes automatizados...
powershell.exe -ExecutionPolicy Bypass -File "C:\Testes\testes.ps1"
echo Testes concluídos.
pause
Esse .bat pode ser agendado via Agendador de Tarefas do Windows para rodar em horários específicos.
📋 Boas Práticas na Automação de Testes
- Use logs para registrar resultados e erros:
"[$(Get-Date)] Teste executado" | Out-File "C:\Testes\log.txt" -Append - Crie funções reutilizáveis para cada tipo de teste.
- Utilize parâmetros para tornar os scripts dinâmicos.
- Integre com ferramentas de CI/CD como Jenkins ou Azure DevOps.
- Teste scripts em ambiente controlado antes de aplicar em produção.
📚 Fontes e Referências
- Procedimento.com.br – Automatizar testes com PowerShell
- DelftStack – Executar scripts PowerShell via .bat
- CriandoBits – Automatizando tarefas com PowerShell
