Chrome Driver: Necessário para navegação com o navegador Chrome. Checar a versão que possui o Chrome instalado e baixar o exe.
Logo após a instalação, adicionar o executável dentro da pasta \bin\Debug\net6.0\ do projeto.
O executável deve ser adicionado na pasta do projeto que será feito a codificação dos testes, neste caso, eu estou usando o projeto chamado Alura.LeilaoOnline.Selenium. Caso o nome dentro da pasta Debug\ seja diferente de “net6.0”, siga o processo normalmente, adicionando o executável dentro da pasta que for criada dentro de Debug\
Etapa executada antes da execução de cada teste individual. Nesta etapa são configurados as preparações necessárias para o ambiente de teste, como iniciar o navegador, abrir a página da web, fazer login, e outros. O objetivo do Setup é garantir que o ambiente esteja pronto para executar o teste. Um outro exemplo, poderia ser a criação do construtor base de um navegador do projeto.
public class teste_1
{
// Variável **driver** do tipo IWebDriver (Navegador web)
private IWebDriver driver;
// Caminho do executável ChromeDriver
private PastaDoExecutavel = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
// Setup
public teste_1()
{
// Um novo navegador é atribuido a variável **driver**
driver = new ChromeDriver(PastaDoExecutavel);
}
}
Executado após a conclusão de cada teste individual, classificado como um destrutor. Ações necessárias para encerrar o ambiente de teste, como fechar o navegador, limpar cookies, realizar logout, etc. O Tear Down é responsável por limpar qualquer estado residual deixado pelo teste.
public void Dispose()
{
driver.Quit();
}
Conjunto comum de Setup e Tear Down para todas as classes de teste em uma classe de teste. Recurso compartilhado por testes da mesma classe
Recurso compartilhado por testes de várias classes
Representa um caso de teste individual que não possui parâmetros. Ele é executado uma vez e é esperado que produza um resultado booleano (verdadeiro ou falso) indicando se o teste passou ou falhou.
[Fact]
public void TestAddition()
{
// Lógica de teste
Assert.Equal(4, Calculator.Add(2, 2));
}
Recebe parâmetros via [InlineData]
e é executado várias vezes, uma vez para cada conjunto de dados fornecido. É útil quando você deseja testar o mesmo cenário com diferentes entradas.
[Theory]
[InlineData(2, 3, 5)]
[InlineData(0, 0, 0)]
[InlineData(-2, 2, 0)]
public void TestAddition(int a, int b, int expectedResult)
{
// Lógica de teste
Assert.Equal(expectedResult, Calculator.Add(a, b));
}