Python tem algo como Capivara / Pepino?
@Ruby possui essa excelente camada de abstração sobre o Selenium, chamada Capybara, que você pode usar para realizar testes funcionais / de aceitação / integração. Ele também tem outra biblioteca chamada Cucumber, que dá um passo adiante e permite que você escreva testes em inglê
s duas bibliotecas são construídas sobre o Selenium e podem ser usadas para testar em qualquer navegador principal, mas por causa de suas camadas de abstração, é super fácil escrever testes usando-as (bem, por mais fácil que seja o teste funcional
Minha pergunta é: Python tem algo parecido? Encontrei Pythonistas fazendo testes funcionais com várias ferramentas, mas ...
A) Splinter: não usa Selenium (e não possui um driver IE)
-EDITAR Parece que o Spliter agora usa Selenium (veja as respostas abaixo
B) Alfajor: não é atualizado há mais de um ano; parece morto
C) Selênio (bruto): muitas pessoas parecem estar usando o Selênio diretamente, mas parece que uma camada de abstração poderia facilitar muito o uso
Então, alguém sabe alguma coisa do tipo Capivara, ou melhor ainda, do pepino, para Python (ele não precisa realmente usar o Selenium, mas precisa suportar todos os principais navegadores
* EDIT *
Para aqueles que não estão familiarizados com a Capybara, basicamente apenas adiciona uma API para que, em vez da API normal do Selenium, você possa fazer algo assim:
When /I sign in/ do
within("#session") do
fill_in 'Login', :with => '[email protected]'
fill_in 'Password', :with => 'password'
end
click_link 'Sign in'
end
É usado pelo Cucumber, que permite resumir ainda mais (quase em inglês):
Scenario Outline: Add two numbers
Given I have entered <input_1> into the calculator
And I have entered <input_2> into the calculator
When I press <button>
Then the result should be <output> on the screen
Examples:
| input_1 | input_2 | button | output |
| 20 | 30 | add | 50 |
Eu adoraria um equivalente em pepino em Python, mas mesmo um equivalente em Capivara seria úti