Sei sulla pagina 1di 35

Herramientas open source para testing de aplicaciones Web. Evaluacin y usos.

F. Javier Daz Claudia M. Banchoff Tzancoff Anah S. Rodrguez Valeria Soria {javier.diaz claudia.!anchoff anahi.rodriguez valeria."oria#$lin%i.unl&.edu.ar '()T(. Fac. de (nfor*+%ica ,niver"idad )acional de 'a -la%a. 'a -la%a ./00 AR12)T()A

Aplicacin Web

3 M4er"5 6'a" a&licacione" de (n%erne% "on a&licacione" clien%e7"ervidor donde el clien%e e" un navegador 8e! 4 el "ervidor e" un "ervidor 8e! o una a&licaci9n "ervidor:

;!je%ivo
3 2l o!je%ivo de e"%e %ra!ajo e" &re"en%ar una "erie de herra*ien%a" <ue a"i"%en en la %area de %e"%ing duran%e el de"arrollo de una a&licaci9n =e!. 3 2"%e %ra!ajo "e ha focalizado en el an+li"i" de a&licacione" 8e!. Se &re"en%ar+n herra*ien%a" de c9digo a!ier%o agru&ada" "eg>n el %i&o de &rue!a realizar.

Te"%ing
3 2" "o*e%er un "of%=are a cier%a" condicione" <ue &uedan de*o"%rar "i e" v+lido o no verificando <ue el "of%=are "e aju"%a a lo" re<ueri*ien%o" 4 ade*+" validar <ue la" funcione" "e i*&le*en%an correc%a*en%e. 3 2" en defini%iva agregar valor a un &roduc%o 4 no "ola*en%e al &roduc%o "ino al &roce"o de de"arrollo "ie*&re <ue "e con"ideren lo" re"ul%ado" generado".

2%a&a" de %e"%ing
3 Al igual <ue el de"arrollo de "of%=are la" &rue!a" %a*!i?n %ienen diferen%e" e%a&a" co*o "er5 -lanificaci9n 4 Con%rol An+li"i" 4 Di"e@o (*&le*en%aci9n 4 2jecuci9n 2valuaci9n 4 Cierre.

Calidad de Sof%=are
3 (222 "%d. A.05 62l conjun%o de &rogra*a" de ordenador lo" &rocedi*ien%o" 4 &o"i!le*en%e la docu*en%aci9n a"ociada 4 lo" da%o" rela%ivo" a la o&eraci9n del "i"%e*a infor*+%ico:. 3 Alguno" au%ore" afir*an <ue lo" valore" de calidad <ue %iene *a4or relevancia en la" a&licacione" 8e! "on5 ,"a!ilidad Funciona!ilidad Fia!ilidad Seguridad 2ficiencia 4 Man%eni!ilidad.

Ca"o de -rue!a
,n ca"o de &rue!a e" un conjun%o de en%rada" &recondicione" de ejecuci9n re"ul%ado" e"&erado" 4 &o"condicione" de ejecuci9n realizada" &ara un o!je%ivo &ar%icular %al co*o ejecu%ar un ca*ino en &ar%icular o verificar la concordancia con lo" re<ueri*ien%o".

Ca"o de -rue!a
,n ca"o de &rue!a de!e &ro!ar un i%e* Ben %eoraC 4 luego realizar un an+li"i" del re"ul%ado e"&erado. Si "e de"cu!re un nuevo ca"o docu*en%arlo 4 no ejecu%arlo. Se %iende agru&ar ca"o" de &rue!a &ero a"i "e &ueden en*a"carar errore".

Ca"o de -rue!a
;!je%ivo5 la car+c%eri"%ica del "i"%e*a a &ro!ar. Da%o" de en%rada 4 de a*!ien%e5 da%o" a in%roducir al "i"%e*a <ue "e encuen%ra en condicione" &ree"%a!lecida". Co*&or%a*ien%o e"&erado5 la "alida o la acci9n e"&erada en el "i"%e*a de acuerdo a lo" re<ueri*ien%o" del *i"*o. Co*&ro!aci9n del re"ul%ado e"&erado5 *?%odo o for*a de realizarlo.

Ti&o" de &rue!a"
3 -rue!a" de ace&%aci9n
D Alfa D Be%a

3 -rue!a" de "i"%e*a
D D D D D ,"a!ilidad (n%erfaz de u"uario Seguridad Rendi*ien%o Configuraci9n

Ti&o" de &rue!a"
3 -rue!a" funcionale" 3 -rue!a" de in%egraci9n
D Big Bang D To& Do=n D Bo%%o* ,&

3 -rue!a" de unidad

-ro!ando a&licacione" 8e!


3 2l %i&o de &rue!a" no de&ende del %i&o de a&licaci9n 4a "ea 8e! o e"cri%orio. 3 Se reco*ienda realizar la" "iguien%e" &rue!a" !+"ica"5
D D D D D -rue!a" de ace&%aci9n -rue!a" e"%+%ica" de c9digo -rue!a" uni%aria" -rue!a" funcionale" -rue!a" de rendi*ien%o

Eerra*ien%a"
3 Seg>n 8hi%%aFer la u%ilizaci9n de una herra*ien%a &uede "er >%il &ara *ejorar 4 agilizar la" &rue!a" a realizar. 3 -or eje*&lo a la hora de "i*ular una can%idad de%er*inada de u"uario" accediendo a un "i%io al *i"*o %ie*&o o la carga de da%o" en un "i"%e*a e%c.

Eerra*ien%a" 7 Ven%aja"
3 2l %ra!ajo re&e%i%ivo "e reduce. 3 ,na *a4or coherencia 4 re&e%i!ilidad. 3 2valuaci9n ;!je%iva. 3 F+cil vi"ualizaci9n de lo" re"ul%ado".

Eerra*ien%a" 7 De"ven%aja"
3 Se &ueden llegar a %ener eG&ec%a%iva" irreali"%a" "o!re la" herra*ien%a". 3 So!re"%i*ar el %ie*&o. 3 'a incor&oraci9n de la herra*ien%a a la" &rue!a" realizada" &uede de*andar *+" %ie*&o <ue el &revi"%o.

Eerra*ien%a" D -rue!a" de ace&%aci9n


3 FitNesse: &er*i%e co*&arar lo <ue de!e hacer el "of%=are con lo <ue real*en%e hace. Se &ueden realizar &rue!a" de ace&%aci9n 4 &rue!a" de regla" de negocio. http://fitnesse.org/ 3 Avignon: &er*i%e a lo" u"uario" eG&re"ar &rue!a" de ace&%aci9n de una for*a no a*!igua an%e" <ue co*ience el de"arrollo. Tra!aja en conjun%o con J,ni% ETT-,ni% e%c.
http://www.nolacom.com/avignon/inde .asp

Fi%)e""e

Ta!la" co*&ara%iva"
!ruebas de aceptacin

Herramienta
Fit esse

UI
WEB

Licencia
GPL

Plataforma
Win / Linux

Lenguaje
Java, C#, PHP, Ruby, .NET, etc. Java, .NET, etc.

Ult. Actual.
Julio !!"

Documentacin
Gu#a $e %&ua'io&

A!ignon

G%(

GPL

Win / Linux

)ctub'e !!*

(n&u+iciente

Eerra*ien%a" D -rue!a" e"%+%ica" de c9digo


3 !H!"int: &er*i%e *ejorar la" %area" de &rogra*aci9n 4a "ea co*enzando la codificaci9n con e"%a herra*ien%a o *ejorando c9digo 4a eGi"%en%e. -er*i%en dar "eguridad en el c9digo errore" de "in%aGi" varia!le" no u%ilizada" c9digo *uer%o e%c.
http://www.icosaedro.it/phplint/

3 #A$%: realiza che<ueo de "eguridad en el c9digo de%er*inando la cri%icidad de fallo" co*o a" %a*!i?n una evaluaci9n del c9digo.
http://www.&orti&y.com/security'resources/rats.(sp

3 )A%*A: &er*i%e encon%rar vulnera!ilidade" de "eguridad calidad en el c9digo rendi*ien%o e%c. A&rovecha la funcionalidad de lo" &lugin" FindBug" -MD 4 Jlin%.
http://www.yasca.org/

Eerra*ien%a" D -rue!a" e"%+%ica" de c9digo


3 !+,: &uede "er in%egrado a varia" herra*ien%a"5 JDevelo&er 2cli&"e J2di% e%c. -er*i%e encon%rar en el c9digo errore" en el *anejo de eGce&cione" c9digo *uer%o c9digo "in o&%i*izar c9digo du&licado e%c. http://pmd.source&orge.net/ 3 Find-ugs: &uede in%egrar"e a 2cli&"e. Realiza un e"caneo de c9digo encon%rando errore" co*une" *ala" &r+c%ica" de &rogra*aci9n c9digo vulnera!le rendi*ien%o "eguridad e%c. http://&indbugs.source&orge.net/

Ta!la" co*&ara%iva"
!ruebas est.ticas de cdigo
Herramienta
PHPLint "A#$

UI
G%( CL(

Licencia
B,GPL

Plataforma
Win / Linux Win / Linux Win / Linux Win / Linux Win / Linux

Lenguaje
PHP C//, Pe'l, PHP y Pyt0on Java, .NET, PHP, HT.L, C,,, etc. Java Java

Ult. Actual.
.ayo !!" ,e1tie2b'e !!" .ayo !!" 3eb'e'o !!" .a'4o !!"

Documentacin
Tuto'ial / .anual ,in -ato&

%A$&A

CL(

GPL

.anual

P'D Fin()ugs

CL( G%( / CL(

B,GPL

Tuto'ial/ .anual Tuto'ial/ .anual

Eerra*ien%a" D -rue!a" ,ni%aria"


3 /0nit: au%o*a%iza la" &rue!a" uni%aria" 4 de in%egraci9n. -rovee cla"e" 4 *?%odo" <ue facili%an la %area de realizar &rue!a" en el "i"%e*a 4 a" a"egurar la con"i"%encia 4 funcionalidad. http://www.(unit.org/ 3 !H!0nit: &er*i%e crear 4 ejecu%ar %e"%" uni%ario" de *anera "i*&le. 2"%+ !a"ado en el fra*e=orF 6J,ni%: &ara java. http://www.phpunit.de/ 3 %imple$est: &rue!a" de unidad en -E- 4 &rue!a" 8e!. Cuen%a con un navegador 8e! in%erno lo <ue &er*i%e <ue la" &rue!a" naveguen lo" "i%io" 8e! ingre"en da%o" en for*ulario" 4 &+gina" de &rue!a. http://www.simpletest.org/

Ta!la" co*&ara%iva"
!ruebas 0nitarias
Herramienta
*Unit

UI
(nte5'a6 $a CL(

Licencia
CPL

Intetgracin
Ecli1&e / NetBean& No 81lica

Ult. Actual.
.ayo !!" Junio !!" 8b'il !!:

Documentacin
Cooc7boo7/ 3o'o /389 .anual

PHPUnit

PHP

$imple#est

CL(

LGPL

Ecli1&e

Tuto'ial / Ho; to

Eerra*ien%a" D -rue!a" Funcionale"


3 *he1ueadores de Enlace
D 2EN0: &er*i%e encon%rar lo" enlace" ro%o" en un an+li"i" en &rofundidad http://home.sna&u.de/tilman/ enulin3.html D "4N5 *hec3er W6*5 herra*ien%a ;n7'ine <ue &er*i%e encon%rar enlace" ro%o" ancla" *al definida" adver%ir "o!re redireccione" e%c. http://validator.w6.org/chec3lin3 D ,#5%pider: &er*i%e encon%rar enlace" ro%o" %iene nivele" de &rofundidad 4 genera un +r!ol jer+r<uico con lo" enlace" del "i%io en &rue!a con infor*aci9n de%allada. http://www.dr3.com.ar/inde .php D "in3 Evaluator: "e in%egra a la in%erfaz del navegador. Se &roce"a "9lo la &+gina ac%ual 4 no realiza un an+li"i" en &rofundidad re"al%ando en di"%in%o" colore" el e"%ado de lo" enlace". https://addons.mo7illa.org/es'E%/&ire&o /addon/89:8

H2),

8IC Valida%or

Ta!la" co*&ara%iva"
!ruebas &uncionales ; *he1ueadores de enlaces.
Herramienta
+, U

UI
G%(

Licencia
3'ee;a'e

Procesamiento
Re2oto / Local Re2oto

Plataforma
Win

Ult. Actual.
8b'il !!" No 81lica

Documentacin
389

LI &hec.er /0& D"-$pi(er

WEB

GPL

Win / Linux Win Win / Linux

.anual

G%(

GPL 81ac0e Licen&e

Re2oto / Local Re2oto / Local

8b'il !!" .ayo !!"

3o'o Ho; to / E<e21lo&

Lin. ,!aluator WEB

Eerra*ien%a" D -rue!a" Funcionale"


3 Funcionalidad
D %elenium 4,E: &lug7in del FirefoG. -er*i%e gra!ar clicF" %i&eo 4 o%ra" accione" &ara realizar %e"%. Se &uede eG&or%ar en di"%in%o" lenguaje" &ara "u &o"%erior ada&%aci9n 4 u%ilizaci9n. http://seleniumh1.org/pro(ects/ide D H$$!0nit: Se !a"a en la *e%odologa H-. Se &ueden realizar &rue!a" funcionale" an%e" de <ue e"%?n generada" la" &+gina" 8e!. )o "e !a"a en lo" con%role" <ue %enga la &+gina "i no <ue "e !a"a en lo" valore" de en%rada <ue el u"uario &ueda ingre"ar. http://httpunit.source&orge.net/inde .html D -adboy: -er*i%e gra!ar 4 luego re&roducir la" accione" realizada" &or lo" u"uario" luego e"%e "cri&% &uede "er u%ilizado en o%ra" herra*ien%a" co*o "er JMe%er. Se &uede in%egrar al navegador 8e! (n%erne% 2G&lorer. http://www.badboy.com.au/ D %AH4: -er*i%e gra!ar 4 luego re&roducir "cri&%. Tiene "o&or%e funcione" realizada" en lenguaje Java"cri&%. http://sahi.co.in/w/

Seleniu*

Ta!la" co*&ara%iva"
!ruebas &uncionales ; Funcionalidad
Herramienta UI Licencia Plataforma
=a'io& Win / Linux Win Win / Linux

Ult. actual.

Documentacin

$elenium ID, H##PUnit )a(1o2 $ahi

G%( WEB WEB G%(

81ac0e P'o1ia LGPL 81ac0e

Junio !!: .ayo !!: -icie2b'e !!: .ayo !!"

Tuto'ial/ .anual/Wi7i Tuto'ial/ .anual/389 .anual/ 3o'o .anual/ 389

Eerra*ien%a" D -rue!a" de Rendi*ien%o


3 /+eter: &er*i%e realizar &rue!a" de rendi*ien%o de "%re"" de carga 4 de volu*en "o!re recur"o" e"%+%ico" o din+*ico". http://(a3arta.apache.org/ <pen%$A: &er*i%e ca&%ar la" &e%icione" del u"uario generada" en un navegador 8e! luego guardarla" 4 &oder edi%ar &ara "u &o"%erior u"o. http://www.opensta.org/ WEb"oad: &er*i%e realizar &rue!a" de rendi*ien%o a %rav?" de un en%orno gr+fico en el cual "e &ueden de"arrollar gra!ar 4 edi%ar "cri&% de &rue!a". http://www.webload.org =rinder: 2" un fra*e=orF e"cri%o en Java con el cual "e &ueden realizar &rue!a" de rendi*ien%o a %rav?" de "cri&% e"cri%o" en lenguaje J4%hon. -er*i%e gra!ar la" &e%icione" del clien%e "o!re un navegador 8e! &ara "er luego re&roducido. http://grinder.source&orge.net/ 3

JMe%er

Ta!la" co*&ara%iva"
!ruebas de rendimiento
Herramienta
*'eter 3pen$#A

UI
G%( G%(

Licencia
81ac0e Licen&e GPL

Plataforma
Win / Linux Win

&onc. usuarios
,( ,(

Ult. Actual
Junio !!" )ctub'e !!> 8b'il !!> 3eb'e'o !!"

Documentacin
Tuto'ial Gu#a $e u&ua'io

/e1Loa(er 4rin(er

G%( G%(

GPL ? GPL

Win Win / Linux

,( ,(

Tuto'ial Gu#a $e u&ua'io / 389

BJC 2Gi"%en do" %i&o" de licencia"5 1-' 4 &rofe"ional

Conclu"ione"
3 Al u%ilizar herra*ien%a" o&en "ource no "9lo "e encuen%ran di"&oni!le" &ara "u u"o "ino <ue %a*!i?n "e la" &odra ada&%ar a lo" re<ueri*ien%o" &ro&io" del &ro4ec%o. 3 2Gi"%en *ucha" herra*ien%a" <ue a4udan al e<ui&o de %e"%ing de un &ro4ec%o. 2legir la" *+" adecuada" no e" una %area "encilla.

+0*HA% =#A*4A%>>>

Potrebbero piacerti anche