martes, enero 21
sábado, enero 4
Ruby, una joya para automatizar
Puede
ocurrir que la tarea de comenzar a automatizar pruebas resulte
frustrante y muy probablemente sea debido a la complejidad del lenguaje
que se esté utilizando si la automatización está orientada a realizar
scripts mantenibles y reutilizables. Existe mucha información en
internet sobre automatización y por lo general se encuentra basada en
Java. Java es un lenguaje muy poderoso y ampliamente utilizado en todo
el mundo por infinidad de aplicaciones, de eso no hay duda. Pero lo
cierto es que para alguien que está comenzando a programar/automatizar
no resulta muy amigable y sencillo.
Para
empezar a automatizar sin tantas complicaciones sólo hay que elegir un
lenguaje simple, que esté orientado a las personas en lugar de las
máquinas. Que el lenguaje esté orientado a las personas en lugar de las
máquinas significa que sea sencillo de aprender y memorizar. Que su
sintaxis sea lo mas familiar posible a nuestra forma de comunicarnos.
Vale aclarar que la mayoría se los lenguajes están en inglés por lo que
la frase “a nuestra forma de comunicarnos” hace referencia a dicho
idioma.
Pues bien, un lenguaje que cumple con
esta característica es Ruby. Un lenguaje con una curva de aprendizaje
sumamente pronunciada, con una sintaxis sencilla y elegante, sin
complicaciones y con un dinamismo mas que importante.
Volviendo a Ruby, quiero comentar que existe muchísima documentación y una amplia comunidad detrás para ayudar.
Ya hemos mencionado en un post anterior
como es el clásico “hola mundo” en Ruby y al ser tan fácil lo volvemos a
escribir para que quede en esta entrada:
hola_mundo.rb es el nombre del archivo
puts “hola mundo”
Y lo que está en verde es todo el código que contiene. Sencillo verdad?
Por ejemplo, ahora veamos que se entiende con la siguiente porción de código:
10.times do
puts “hola mundo” end
puts “hola mundo” end
Este es un simple ejemplo de lo fácil
que es escribir y entender código en Ruby. Eso si, existen conceptos un
poco mas complejos, no es todo así de sencillo aunque para comenzar a
programar automatización no se requieren demasiados conocimientos sobre
un lenguaje, obviamente cuanto mas se conozca mejor será, pero no es una
limitación y eso se va adquiriendo sobre la marcha. Recordemos que
cuando automatizamos no estamos haciendo una aplicación en sí sino mas
bien programando instrucciones para simular el uso del browser por parte
del usuario en el caso de pruebas funcionales y para eso no se
necesitan grandes destrezas en programación.
Vamos con un ejemplo mas. Que parece que indica el siguiente código?
if titulo.include? “Bienvenido”
puts “Mensaje de bienvenida OK” end
puts “Mensaje de bienvenida OK” end
Su traducción sería:
si (if) titulo incluye (include?) la palabra “Bienvenido” imprimir (puts) “Mensaje de bienvenida OK”
Que también se puede escrbir de la siguiente manera:
puts “Mensaje de bienvenida OK” if titulo.include? “Bienvenido”
Quien en algún momento aprendió un
lenguaje de programación es muy probable que haya notado que no hemos
usado llaves, corchetes ni punto y coma (;). Si, Ruby no los necesita.
Como se puede ver el lenguaje es muy facil de entender y a medida que se va aprendiendo se va tornando hasta divertido.
Ruby tiene muchísimas herramientas
orientadas a pruebas que son gratuitas (open source) como Cucumber,
RSpec, Minitest entre otros y van surgiendo cada vez mas en el mercado
asi como surgen experiencias y respuestas de solución a preguntas de
problemas que otros ya tuvieron.
Podríamos decir que el que no tiene los skills técnicos para automatizar podría adquirilos facilmente.
Un tester que entiende como programar
tiene un plus respecto de un desarrollador y ese plus lo obtuvo de su
experiencia como tester!
Links
- https://www.ruby-lang.org/es/
- http://es.wikipedia.org/wiki/Ruby
- http://testingbaires.com/automatizacion-programar-es-facil/
Me llegó la noticia de esta publicación
que me resultó muy interesante mostrarla, no solo para difundirla a la
comunidad sino para tenerla presente y en la medida que vaya pudiendo,
evaluar cada una de las herramientas y llevar un registro de ello que
también lo estaré publicando.
A continuación les dejo el listado en
cuestión, con el nombre de la herramienta nada más, en próximos
artículos estaré accediendo a la página oficial de cada una de ellas
para conocer su alcance y funcionalidades principales:
1) QMetry:
http://www.qmetry.com/
http://www.qmetry.com/
2) TestRail:
http://www.gurock.com/testrail/
http://www.gurock.com/testrail/
4) qTest:
http://www.qasymphony.com/qtest.html
http://www.qasymphony.com/qtest.html
5) TestLodge:
http://www.testlodge.com/
http://www.testlodge.com/
6) HP ALM/Quality center:
http://www8.hp.com/in/en/software-solutions/software.html?compURI=1172141
http://www8.hp.com/in/en/software-solutions/software.html?compURI=1172141
7) Zephyr:
http://www.getzephyr.com/
http://www.getzephyr.com/
8) Testuff:
http://www.testuff.com/
http://www.testuff.com/
9) Test Collab:
http://testcollab.com/
http://testcollab.com/
10) Gemini:
http://www.countersoft.com/solutions/testing/
http://www.countersoft.com/solutions/testing/
11) PractiTest:
http://www.practitest.com/
http://www.practitest.com/
12) TestLink:
http://sourceforge.net/projects/testlink/
http://sourceforge.net/projects/testlink/
13) QAComplete:
http://smartbear.com/products/qa-tools/test-management/
http://smartbear.com/products/qa-tools/test-management/
14) Silk Central:
http://www.borland.com/products/silkcentral/
http://www.borland.com/products/silkcentral/
15) IBM Rational Quality Manager:
http://www-03.ibm.com/software/products/en/ratiqualmana
http://www-03.ibm.com/software/products/en/ratiqualmana
Herramientas adicionales
17) TestPad:
https://ontestpad.com/
https://ontestpad.com/
18) Aptest:
http://www.aptest.com/atm2/
http://www.aptest.com/atm2/
19) SpiraTest:
https://www.inflectra.com/SpiraTest/Default.aspx
https://www.inflectra.com/SpiraTest/Default.aspx
20) Meliora TestLab:
https://www.melioratestlab.com/
https://www.melioratestlab.com/
21) SmarteQM:
http://www.smartesoft.com/products_smarteQM.php
http://www.smartesoft.com/products_smarteQM.php
22) Test Run:
http://runtestrun.com/
http://runtestrun.com/
23) Test Wave:
http://www.testwave.co.uk/
http://www.testwave.co.uk/
24) Enterprise Tester:
http://enterprisetester.com/
http://enterprisetester.com/
25) TestLog:
http://www.testlog.com/
http://www.testlog.com/
26) QaTraq:
http://sourceforge.net/projects/qatraq/
http://sourceforge.net/projects/qatraq/
Fuente:
Suscribirse a:
Entradas (Atom)