Os testes automatizados utilizando Selenium são feitos através de uma atividade C#.
Foi disponiblizado um template c# com tudo que você precisa para rodar seu Selenium pelo TestFlow.
Passos
- Crie sua Atividade C# normalmente. Antes de escrever qualquer código clique no item Carregar Template e escolha Template Selenium.
- Seu teste deve ser criado dentro do método "Test".
- Você pode:
- Criar uma atividade contendo vários testes.
- Neste caso lembre-se de considerar cada teste como um passo da atividade C#.
- Cria seu teste seguindo as boas práticas de teste: Arrange, Act e Assert para facilitar leitura e manutenção.
- Controlar os passos com um contador que irá sendo incrementado.
- A cada teste mostrar o seu resultado no log
- context.Status.AddStage(int step, string message)
- A cada teste setar o status da atividade como sucesso ou falha para que no final o status geral seja corretamente calculado
- context.Status.AddAlert(int step, string message)
- context.Status.SetFailed(string message)
- No último teste, além dos itens acima setar a atividade como completa.
- context.Status.SetCompleted(string message)
- Abaixo uma imagem com um exemplo de mais de teste de Selenium dentro de uma mesma atividade C#.
- Organização de seus testes como passos da atividade.
- Setando os status dos testes nos passos da atividade. "step" é uma variável do tipo int que é incrementada ao início de cada passo.
- Lembre-se de fechar o navegador a cada passo, caso seja necessário ou no último passo da atividade e fazer um dispose no webDriver.
- Neste caso lembre-se de considerar cada teste como um passo da atividade C#.
- Criar várias atividades contendo um teste cada.
- Instanciar o webDriver somente uma vez na atividade e adicioná-lo ao contexto para ser utilizado em todo o seu projeto.
- context.Resources.Add<T>(T resource [, string alias]). Ex.: context.Resources.Add(_seleniumManager);
- Em suas atividades C# buscar o WebDriver do contexto do TestFlow
- var webDriver= context.Resources.OfType<ISeleniumWebDriverManager>().First().Value;
- Criar seu teste seguindo as boas práticas de teste: Arrange, Act e Assert para facilitar leitura e manutenção.
- Ao final do seu teste setar o status do teste e a completude do mesmo:
- context.Status.AddAlert(int step, string message)
- context.Status.SetFailed(string message)
- context.Status.SetCompleted(string message)
- A cada atividade fechar o navegador se necessário. Caso faça isto você deverá instanciar novamente o web driver a cada atividade. Você pode fazer o dispose (Quit) na última atividade de teste.
- Instanciar o webDriver somente uma vez na atividade e adicioná-lo ao contexto para ser utilizado em todo o seu projeto.
- Criar uma atividade contendo vários testes.
- Observação: Estamos utilizando a versão 108.0.5359.71 do Chromedriver embacada no Agent do TestFlow. Esta versão é compatível com a versão 108.0.5359.126 do navegador Chrome. Caso necessite utilizar outra versão do Chromedriver você deverá instanciá-la manualmente na sua Atividade C#. Para mais informações sobre carga do personalizada do driver leia: Helper Selenium.
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas