Olá Pessoal!
Estava entrando em um site que tinha um captcha simples: a soma de dois números inteiros.
Eu gostei, pois existem captchas que nem o Perna Longa iria enxergar as letras....
O que eu fiz? Fui logo vendo uma maneira de automatizar este simples captcha, e não é que funcionou?
Dai resolvi criar uma página com o "Desafio Selenium" (que nem é tão desafio assim!) :P
O desafio consiste em conseguir automatizar a página que eu criei de um 'captcha' que, quando a soma dos dois números for submetida correramente apresenta o texto 'correto' e quando não estiver correto apresenta 'errado'.
Claro que o script será criado com o resultado final de 'correto'.
Então, tentem criar um script no Selenium IDE para automatizar. A página dá umas dicas!
http://www.eliasnogueira.com/arquivos_blog/selenium/desafio/1desafio/
Solução!
Bem pessoal, a solução deste desafio já se encontra disponível!
Se você está vendo este post somente agora, tente fazer o desafio sem ver a resposta e o vídeo explicativo!
O link para a página do principal dos desafios é: http://www.eliasnogueira.com/arquivos_blog/selenium/desafio/
Vídeo explicativo
Abraços!
package Teste;
ResponderExcluirimport com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.regex.Pattern;
public class TesteSoma extends SeleneseTestCase {
@Before
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://www.eliasnogueira.info/");
selenium.start();
}
@Test
public void testTestesoma2() throws Exception {
selenium.open("/arquivos_blog/selenium/desafio/soma.php");
String numero1 = selenium.getText("number1");
String numero2 = selenium.getText("number2");
String soma = selenium.getText("soma");
int resultado = Integer.parseInt(numero1) + Integer.parseInt(numero2);
selenium.type("soma", String.valueOf(resultado));
selenium.click("submit");
selenium.waitForPageToLoad("30000");
verifyTrue(selenium.isTextPresent("CORRETO"));
assertTrue(selenium.isTextPresent("CORRETO"));
}
@After
public void tearDown() throws Exception {
selenium.stop();
}
}
package Teste;
ResponderExcluirimport com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import java.util.regex.Pattern;
public class TesteSoma extends SeleneseTestCase {
@Before
public void setUp() throws Exception {
selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://www.eliasnogueira.info/");
selenium.start();
}
@Test
public void testTestesoma2() throws Exception {
selenium.open("/arquivos_blog/selenium/desafio/soma.php");
String numero1 = selenium.getText("number1");
String numero2 = selenium.getText("number2");
String soma = selenium.getText("soma");
int resultado = Integer.parseInt(numero1) + Integer.parseInt(numero2);
selenium.type("soma", String.valueOf(resultado));
selenium.click("submit");
selenium.waitForPageToLoad("30000");
verifyTrue(selenium.isTextPresent("CORRETO"));
assertTrue(selenium.isTextPresent("CORRETO"));
}
@After
public void tearDown() throws Exception {
selenium.stop();
}
}
100%! Com o Sel RC é sempre mais fácil... rs
ResponderExcluirElias mando bem cara desafio muito bom, como sou iniciante não consegui, mais tava quase, meu problema foi não saber como que o Selenium pegava o valor das variaveis....vlw mesmo ajudou muito... bora pro proximo desafio!!!
ResponderExcluir