POST DO
DAVID E
DO RAFAEL
SOFTWARE
26
Cargo:
Analistas de teste
do Grupo Locaweb
Contatos:
david.silva@locaweb.com.bre
rafael.olivieri@locaweb.com.brDAVID ALMEIDA DE MELO E
DOMINGOS RAFAEL OLIVIERI
uem nunca pegou um trabalho
que não sabia por onde
começar? No último mês,
recebemos uma demanda
GHVDëDGRUD WLYHPRV D
missão de desenvolver
testes automatizados em Ruby para um
novo app mobile. Como “missão dada, é
missão cumprida”, fomos às pesquisas e
encontramos uma boa opção para solucionar
nossa questão. Agora, gostaríamos de
compartilhar essa experiência.
A opção escolhida foi o Calabash, um
framework que permite automatizar o processo
de teste de aceitação para APPs mobile. Ele
pode ser executado em sistemas iOS e Android.
Também há grande ganho em relação ao custo,
quando submetemos os testes a um Cloud,
como Xamarin Cloud Test, para a execução em
diversos dispositivos automaticamente.
Além disso, dentro do Calabash, temos
frameworks como o Cucumber. Essa
ferramenta facilita a escrita e o entendimento
dos testes automatizados, possibilitando
trabalhar com conceitos de BDD.
Legal, temos com o que fazer os testes,
mas e o planejamento disso tudo? Antes de
iniciarmos os testes mobile, devemos ter
algumas coisas em mente. É preciso fazer
algumas perguntas que nos ajudarão muito
nessa etapa: por onde começar? O que deve
ser automatizado? Em quais versões de Android
ou iOS vou precisar validar? Que resoluções,
tamanhos, hardware meu app suporta?
Baseados nessas informações, chegamos
a uma gama de devices que atendem a
necessidade do APP. Lembrando que, se
o APP é apenas para Android, pode ser
executado em qualquer SO. Se for para iOS,
precisaremos de um Mac OS para a execução
dos testes. Nessa etapa, ajustamos a versão
do Ruby que, segundo a documentação do
Calabash, deve ser 1.9.3 - 2.2.+. Depois,
partimos para o desenvolvimento dos testes
em Ruby. Vale comentar que esse sistema
possui gems específicas para trabalhar com
iOS, Android e teste em Cloud.
Utilizamos o Cucumber no Calabash e
tivemos muitos ganhos para o projeto, como
linguagem ubíqua, minimizando mal-entendidos
no desenvolvimento; documentação viva, clara
e simples das funcionalidades da app; feedback
rápido aos desenvolvedores.
Após a entrega da missão, com sucesso,
sobraram algumas lições aprendidas.
Podemos citar que conhecemos uma
ferramenta para automação mobile para
utilizarmos com Ruby, o que nos possibilita
a implementação de testes com conceitos
de BDD e integração com Cucumber. Outro
ponto interessante foi descobrir que essa
mesma ferramenta executa nossos testes em
diferentes plataformas mobile, melhorando
nosso custo.
Q
[
O CALABASH É
UM FRAMEWORK
QUE PERMITE
AUTOMATIZAR
O PROCESSO
DE TESTE DE
ACEITAÇÃO PARA
APPSMOBILE.
PODE SER
EXECUTADO EM
SISTEMAS IOS
E ANDROID
]
MISSÃO
CALABASH
LW
REVISTA LOCAWEB