Você está na página 1de 24

TestesdeInterfaceDeUsurio (GUIeWUI)

PauloCheque 12/02/2009Vero2009

TiposdeTestesRelacionados

TestedeInterface/Controlador TestesdeAceitao TestesdeLayout TestesdeAcessibilidade TestesdeInstalao TestesdeConfigurao/Portabilidade TestesFumaa/Sanidade

CdigodaInterface

Sistemasmalarquiteturados

Cdigodavisojuntocomcdigodomodelo ou

Emcamadas(MVC)

Viso(Interface) Controlador(AdaptadorInterface=>Modelo) Modelo

EstratgiasdeEscrita

Gravao Programao Abstraodeeventosdeusurio UtilizaodiretadaAPIdainterface Isolados Integrados

Gravao

Vantagens

Facilidade Amigvelparaocliente Testesdepoisdaimplementao Problemasdasferramentas


Desvantagens

Cdigonomodularizado Cdigonoamigvel Nemtodasaessocapturadas

Programao

Vantagens

Modularizado Podeserescritoantesdocdigodeproduo Difcilsecomparadocomagravao

Desvantagens

Gravao+Programao

Gravao:Capturagrandepartedoteste Programao:Organizaecompletaocdigo geradopelagravao Vantagens


Rpido Organizado Testesescritosdepoisdaimplementao

Desvantagens

AbstraodeEventos

Mouse(clicar/arrastar)eTeclado(digitar) Encontrarelemento<=Operaocrtica LanarEvento(argumentos) Exemplo,digitar:


textbox=findElement(username) type(textbox).(admin)

EncontrarElemento

Porumidentificador Porpropriedades

Pelotipo Porumtexto Pelalocalizao

Todos:Podeserfrgilaalteraesdolayout

Porumidentificador

+Abstraodotipodocomponente +nicocomponente Exigeaadiodeidsemcomponentesno importantes getElementById(id=username)

PorPropriedades

+Documentaodotipodocomponente Podenosernico:Exigemaisinformaes

localizao Texto(internacionalizao(i18n))

getElement(//input[@type='submit']) getElement(//input[@type='submit'and@value='GO']) getElement(//td[2]/input[@id='Email'])

GraphicalUserInterface(GUI)

PortabilidadedeSOs PortabilidadedeGerenciadoresdeJanelas FEST

WebUserInterface(WUI)

PortabilidadedeSOs PortabilidadedeNavegadores Selenium*

Ferramentas

Navegadoressimples

HTMLUnit +Praticidade/Navegadornoreal Selenium +Navegadoresreais/Complicaes WebDriver(Selenium2) +Navegadoresreais/+Maisrpido

Javascriptinternononavegador

APIdonavegador

Screenshot

TestesdeLayout

Automatizado+Manual

Facilitaradepuraoemservidoresde integraocontnua

EventosAssncronos

AntiPadro:Pausa

Padro:Esperacomtimeout

ParticularidadesdosNavegadores

HTML JavaScript XMLPathLanguage(XPath) DocumentObjectModel(DOM) CascadingStyleSheets(CSS)

http://www.w3schools.com

Cuidados

Popups HTTPS/Certificados

Invlidos Expirados

InternetHTTP

Get,tamanhomximodosparametros Post Encoding Parametros Cookie Request/Response Renderizar/Redirecionar/Encaminhar Resultados:404,500,502...

AesdeUsurio

Mouse

Draganddrop Clique,duploclique =>Atalhosdeteclado,textos Digitaremsequncia Teclaresegurar

Teclado

EstatsticasdosNavegadores

Fonte:
http://www.w3schools.com/browsers/browsers_stats.asp

Console,Prompt...

Errosdoparseredointerpretador

Ordemdosparmetros Conversodasstrings

Simplicidade Noprecisadeferramentaadicional

Ex:Runtime.getRuntime().exec(comando)

Ferramentas

FEST

http://code.google.com/p/fest http://htmlunit.sourceforge.net http://seleniumhq.org http://code.google.com/p/webdriver

HTMLUnit

Selenium

WebDriver

Contato
http://www.agilcoop.org.br agilcoop@agilcoop.org.br paulocheque@agilcoop.org.br

24

Você também pode gostar