inclusão do manual do script de teste
parent
26ca4a55f9
commit
f9207554a9
46
%23 Manual de Uso%3A Script de Testes Automatizados %28cria-usuario-unico.Tests.ps1%29.-.md
Normal file
46
%23 Manual de Uso%3A Script de Testes Automatizados %28cria-usuario-unico.Tests.ps1%29.-.md
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
## 1. Visão Geral
|
||||
|
||||
Este script **não cria usuários**. Sua única finalidade é servir como uma suíte de testes automatizados para o script principal `cria-usuario-unico.ps1`. Ele garante que a lógica de negócio, as validações e o tratamento de erros do script de provisionamento funcionem exatamente como esperado, prevenindo regressões e falhas em produção após qualquer alteração.
|
||||
|
||||
A suíte de testes utiliza o framework **Pester**, o padrão de-facto para testes em PowerShell, e se baseia em um conceito fundamental chamado **Mocking (Simulação)**.
|
||||
|
||||
### O Que é Mocking?
|
||||
|
||||
Em vez de se conectar a um Active Directory real, o script de testes "simula" o comportamento dos cmdlets do AD (`New-ADUser`, `Get-ADUser`, etc.). Isso nos oferece três vantagens críticas:
|
||||
|
||||
1. **Segurança:** Os testes podem ser executados em qualquer máquina, a qualquer momento, **sem nenhum risco** de criar, modificar ou apagar dados em um ambiente de produção ou desenvolvimento.
|
||||
2. **Velocidade:** Os testes são executados em segundos, pois não há latência de rede ou processamento de um Domain Controller real.
|
||||
3. **Confiabilidade e Isolamento:** Podemos forçar cenários de erro específicos (ex: simular que um usuário já existe) de forma determinística, garantindo que estamos testando a *lógica do nosso script*, e não a infraestrutura do AD.
|
||||
|
||||
## 2. Pré-requisitos
|
||||
|
||||
* **PowerShell 5.1 ou superior.**
|
||||
* **Módulo Pester:** Deve estar instalado na máquina de execução. Se não estiver, instale-o com o seguinte comando em um PowerShell como Administrador:
|
||||
```powershell
|
||||
Install-Module -Name Pester -Force
|
||||
```
|
||||
* **Não é necessário** ter os módulos `ActiveDirectory` ou as Ferramentas do Exchange instaladas, pois todos os cmdlets externos são simulados (mocked).
|
||||
|
||||
## 3. Como Usar
|
||||
|
||||
A execução dos testes é um processo simples e direto.
|
||||
|
||||
1. **Abra o PowerShell** no diretório onde os dois scripts (`cria-usuario-unico.ps1` e `cria-usuario-unico.Tests.ps1`) estão localizados.
|
||||
2. **Execute o comando `Invoke-Pester`:**
|
||||
```powershell
|
||||
Invoke-Pester -Path '.\cria-usuario-unico.Tests.ps1'
|
||||
```
|
||||
|
||||
### 3.1. Interpretando os Resultados
|
||||
|
||||
#### Sucesso
|
||||
|
||||
Se todas as regras de negócio do script principal estiverem funcionando corretamente, a saída será verde, indicando que todos os testes passaram.
|
||||
|
||||
```powershell
|
||||
Starting discovery in 1 files.
|
||||
Discovery found 8 tests in 88ms.
|
||||
Running tests in 'C:\scripts\cria-usuario-unico.Tests.ps1'.
|
||||
[+] C:\scripts\cria-usuario-unico.Tests.ps1 1.21s
|
||||
Tests completed in 1.21s
|
||||
Tests Passed: 8, Failed: 0, Skipped: 0, Pending: 0, Inconclusive: 0
|
||||
Loading…
Reference in New Issue