4. BDDBDD Behavior Driven Development
Desenvolvimento Guiado por Comportamento
É umaÉ uma técnica de desenvolvimento Ágiltécnica de desenvolvimento Ágil queque
encoraja colaboração entre desenvolvedores, setoresencoraja colaboração entre desenvolvedores, setores
de qualidade e pessoas não-técnicas ou de negóciosde qualidade e pessoas não-técnicas ou de negócios
em um projeto de software.em um projeto de software.
Foi originalmente concebido em 2003, por Dan North.Foi originalmente concebido em 2003, por Dan North.
https://pt.wikipedia.org/wiki/Behavior_Driven_Development
6. WebDriver driver = new FirefoxDriver();
driver.get("http://localhost:8080/treino/");
WebElement login =
driver.findElement(By.xpath("(//input[contai
ns(@id, 'formLogin')][contains(@type,
'text')])"));
login.click();
login.clear();
login.sendKeys("joao");
WebElement senha =
driver.findElement(By.xpath("(//input[contai
ns(@id, 'formLogin')][contains(@type,
'password')])"));
senha.clear();
senha.sendKeys("123");
WebElement botaoOk =
driver.findElement(By.xpath("(//button[conta
ins(@type, 'submit')])"));
botaoOk.click();
RequisitoRequisito
Funcionalidade: Acessa ao Sistema
Cenário: Acessa sistema com usuário válido
Dado que vou para a página "Tela de Login"
Quando informo "joao" no campo "Usuário"
E informo "123" no campo "Campo Senha"
Quando clico em "Entrar"
Então estou autenticado
Caso de TesteCaso de Teste
Script ManualScript Manual
Tradicional
Ágil BDD
7. WebDriver driver = new FirefoxDriver();
driver.get("http://localhost:8080/treino/");
WebElement login =
driver.findElement(By.xpath("(//input[contai
ns(@id, 'formLogin')][contains(@type,
'text')])"));
login.click();
login.clear();
login.sendKeys("joao");
WebElement senha =
driver.findElement(By.xpath("(//input[contai
ns(@id, 'formLogin')][contains(@type,
'password')])"));
senha.clear();
senha.sendKeys("123");
WebElement botaoOk =
driver.findElement(By.xpath("(//button[conta
ins(@type, 'submit')])"));
botaoOk.click();
RequisitoRequisito
Funcionalidade: Acessa ao Sistema
Cenário: Acessa sistema com usuário válido
Dado que vou para a página "Tela de Login"
Quando informo "joao" no campo "Usuário"
E informo "123" no campo "Campo Senha"
Quando clico em "Entrar"
Então estou autenticado
Caso de TesteCaso de Teste
Script ManualScript Manual
Tradicional
Ágil BDD
ManutençãoManutenção
AprendizagemAprendizagem
ProdutividadeProdutividade
ColaboraçãoColaboração
9. Funcionalidade: Operar a Calculadora
Narrativa:
Para obter as operações básicas da calculadora
Como um usuário qualquer
Desejo resolver problemas matemáticos de forma
mais rápida
Cenário: Somar
Dado que inicio a Calculadora
Quando adiciono "5"
E adiciono "7"
Então seu valor será "12"
Escreva suas histórias
10. Cenário: Somar
Dado que inicio a Calculadora
Quando adiciono "5"
E adiciono "7"
Então seu valor será "12"
@When("Quando inicio a Calculadora")
public void goToWithName(String local) {
}
@When("adiciono "$valor"")
public void whenAdiciono(double valor) {
}
@Then("seu valor será "$valor"")
public void thenSeuValorSera(double valor) {
}
Frases mapeadas
em métodos
11. @ScreenMap(name = "Tela de Busca", location = "http://www.google.com.br")
public class MyPage {
@ElementMap(
name = "Campo de Busca",
locatorType = ElementLocatorType.Id,
locator = "gbqfq")
private TextField searchField;
@ElementMap(
name = "Estou com sorte",
locatorType = ElementLocatorType.Id,
locator = "gbqfbb")
private Button buttonLuckSearch;
}