Uma prática cada vez mais utilizada é o desenvolvimento de sistemas orientado a teste (TDD – Test Driven Development).
O TDD é uma técnica de desenvolvimento de sistemas onde deve ser realizado todo o planejamento de testes contemplando as rotinas principais do sistema, garantindo assim uma maior qualidade no produto final.
Kent Beck, em seu livro “Test Driven Development: By Example“, de 2002, já apontou o caminho, pois a sua prática, o Test Driven Development (TDD) prega que devemos repetir o ciclo:
O NUnit é um framework para testes unitários para todas as linguagens da plataforma .NET. no qual faz parte do universo do Visual Studio.
O Selenium é um Framework para testes de interfaces utilizando Browsers como Chrome, Firefox e etc. O Selenium será a ferramenta que teremos como ênfase na nossa jornada de automatização de teste nesse tutorial.
Dois componentes são importantes para gerar e executar testes com SELENIUM: Selenium RC (Controle Remoto) e Selenium IDE (Ambiente de desenvolvimento integrado).
O Selenium RC é um servidor escrito em Java. Ele recebe chamadas http e executa os testes. As chamadas vêm dos testes unitários (com JUnit e o NUnit, por exemplo).
O Selenium IDE é uma extensão do Firefox.
A ferramenta auxilia a criação de casos de testes, pois grava as ações do usuário, as ações podem ser transformadas em código em várias linguagens, entre elas Java e .Net.
O WebDriver é a classe base do Selenium. A partir dela, podemos realizar diversas funcionalidades de navegação; por exemplo: abrir um browser, fechar um browser, fechar uma aba de um browser, entre outras.
WebDriver é uma API orientada a objetos compactos que podem interage diretamente com o aplicativo em testes. Utiliza a compatibilidade nativa navegador para automação sem o uso de qualquer entidade periférica.
1) “Interface WebDriver”, o que representa um navegador da web idealizada usado para o teste.Três categorias de métodos nesta classe.
Como configurar o ambiente para iniciar os testes automatizados utilizando o Selenium no Microsoft Visual Studio?
Precisa instalar alguns pacotes no projeto para se utilizar o Selenium como instrumento de automatização dos testes. Através do “Manage NuGet Packages for Solution” vamos instalar os seguintes pacotes abaixo:
WebDriver é usada para testes independentes em um único computador, executando um caso de teste por vez (sem paralelismo) e oferecendo suporte aos navegadores Internet Explorer (IE), Firefox (FF) e Google Chrome.
Obs.: Caso precise testar a aplicação em outros navegadores será preciso instalar o driver referente ao navegador.
Ex.: Selenium.WebDriver.IEDriver para realizar os testes no Internet Explorer e o Selenium.WebDriver.FirefoxDriver para realizar os testes no Firefox.
Passo a passo para criar um projeto no Visual Studio
O que é WebElement?
O WebElement é uma classe do Selenium representando um elemento HTML. As principais operações de interação em uma página são realizadas através desta interface; por exemplo: interações com caixas de texto, botões, links, entre outras.
WebElement representa um elemento HTML. Os documentos HTML são compostos por elementos HTML. Elementos HTML são escritos com uma marca de início, com uma marca de fim, com o conteúdo entre: <tagname> conteúdo </ tagname>
O elemento HTML é tudo a partir da marca de início para a marca de fim:. <P> Meu primeiro parágrafo HTML </ p> elementos HTML podem ser aninhadas (elementos podem conter elementos). Todos os documentos HTML consistem em elementos HTML aninhadas.
Exemplos de como codificar para validação dos elementos:
assertTrue(topicosrecentes.isDisplayed());
assertTrue(menusobre.getText().contains(“SOBRE”));
assertTrue(tagwebdriver.getText().equals(“Webdriver”));
IWebElement element = driver.FindElement(By.Id(“confirmForm”));
element.Click();
IWebElement element = driver.FindElement(By.Id(“userName”));
element.SendKeys(“invalid”);
driver.Navigate().GoToUrl(“http://www.google.com/”);
IWebElement element = driver.FindElement(By.Id(“Codigo”));
IWebElement element = driver.FindElement(By.ClassName(“Produto”));
IWebElement element = driver.FindElement(By.TagName(“input”));
IWebElement element = driver.FindElement(By.Name(“userName”));
IWebElement element= driver.FindElement(By.CssSelector(“#food span.ir”));
IWebElement element= driver.FindElement(By.XPath(“//input[@id=’user’]”));
IWebElement element = driver.FindElement(By.LinkText(“enlace”));
IWebElement element = driver.FindElement(By.PartialLinkText(“enlace”));
IWebElement element = driver.FindElementById(“linkGoogle”);
var url = element.GetAttributes(“href”);
You must be logged in to post a comment.