Sei sulla pagina 1di 47

Tcnicas e Estratgias de Teste de Software

Tcnicas e Estratgias de Teste de Software

35

Engenharia de Software, Roger Pressman,

Tcnicas e Estratgias de Teste de Software

35

Captulos 18 e 19

Tcnicas e Estratgias de Teste de Software

35

Tcnicas e Estratgias de Teste de Software

35

Organizao para a Realizao de Teste de Software


Quando o teste se inicia h um conflito de interesses: Desenvolvedores : tm interesse de demonstrar que o programa isento de erros Os responsveis pelos testes : tm interesse em mostrar que o programa tem erros. o ponto de !ista psicolgico: "nlise# $ro%eto e &odifica'(o de Software s(o tarefas construtivas Teste tarefa destrutiva $ara suprir o conflito de interesses e)iste o Grupo Independente de Testes *+T,-. . +T, fa/ parte da equipe de pro%eto de desen!ol!imento de software # no sentido de que est en!ol!ido durante o processo de especifica'(o e continua en!ol!ido plane%ando e especificando procedimentos de teste ao longo de um grande pro%eto.

Tcnicas e Estratgias de Teste de Software

35

Erro (Defeito) e Falha


0"12" 3 consiste essencialmente de um e!ento o4ser!!el onde o sistema !iola a sua especifica'(o. E55. * E0E+T.- 3 item de informa'(o que pode le!ar a uma falha " ati!idade de teste de software um elemento de um tema mais amplo chamado Verificao e Validao *676-. 6E5+0+&"89. 3 refere3se ao con%unto de ati!idades que garante que o software implemente corretamente um fun'(o espec:fica *sem E55.S-. 6"1+ "89. 3 refere3se ao con%unto de ati!idades que garante que o software que foi constru:do rastre!el ;s e)igncias do cliente *sem 0"12"S-.

Tcnicas e Estratgias de Teste de Software

35

Ob eti!os da "ti!idade de Teste


<3 " ati!idade de teste o processo de e)ecutar um programa com a inten'(o de desco4rir um erro. =3 >m 4om caso de teste aquele que tem uma ele!ada pro4a4ilidade de re!elar um erro ainda n(o desco4erto 33 >m teste 4em 3sucedido aquele que re!ela um erro ainda n(o desco4erto. . o4%eti!o pro%etar testes que descu4ram sistematicamente diferentes classes de erros e fa'am3no com uma quantidade de tempo e esfor'o m:nimos. Se a ati!idade de teste for condu/ida com sucesso# ela desco4rir erros no software. " "T+6+ " E E TESTE ?9. $. E @.ST5"5 " ">SA?&+" E BUGSB E1" SC $. E @.ST5"5 SE E0E+T.S E S.0TD"5E EST9. $5ESE?TES.

Tcnicas e Estratgias de Teste de Software

35

Fl#$o de %nfor&a'es de Teste

Se erros gra!es forem encontrados com regularidade EF a qualidade e a confia4ilidade de software s(o suspeitas Se erros facilmente corrig:!eis forem encontrados EF a qualidade e a confia4ilidade do software est(o aceit!eis ou os testes s(o inadequados para re!elar erros gra!es Se n(o for encontrado erro EF a configura'(o de teste n(o foi suficientemente ela4orada e que erros est(o escondidos no software

Tcnicas de Teste(
Tcnicas e Estratgias de Teste de Software 35

<3 Testes Estruturais !ai"a Branca# Gaseia3se num minucioso e)ame dos detalhes procedimentais. S(o testados os caminhos lHgicos atra!s do software# fornecendo3se casos de teste que pIem ; pro!a con%untos espec:ficos de condi'Ies eJou la'os. = $ Testes %uncionais !ai"a &reta# 5efere3se aos testes que s(o reali/ados a partir das especifica'Ies das interfaces *entradas e sa:das- do programa. S(o usados para demonstrar que as fun'Ies dos softwares s(o operacionais# que a entrada adequadamente aceita e a sa:da corretamente produ/idaB que a integridade das informa'Ies e)ternas mantida. = $ Testes Baseados e' Erros KL Gaseiam3se na inclus(o de erros propositais *artificiais- como forma de re!elar erros e)istentes pre!iamente *naturais-. <L 0ornecem indicadores para gerenciar o processo de teste *porcentagem de erros remanescentes# qualidade dos casos de testes-

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca


M um mtodo de pro%eto de casos de teste que usa a estrutura de controle do pro%eto procedimental para deri!ar casos de teste. $odem ser deri!ados casos de teste que <3 garantam que todos os ca'in(os independentes dentro de um mHdulo tenham sido e)ercitados pelo menos uma !e/ =3 e)ercitem todas as decisIes lHgicas para !alores falsos ou verdadeiros 33 e)ecutem todos os laos em suas fronteiras e dentro de seus limites operacionais N3 e)ercitem as estruturas de dados internas para garantir a sua !alidade

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca

Teste de )a&inho *+sico


. mtodo de caminho 4sico possi4ilita que o pro%etista do caso de teste deri!e uma medida de comple)idade lHgica de um pro%eto procedimental e use essa medida como guia para definir um con)unto *sico de caminhos de e)ecu'(o. ,5"0. E 01>O. ou ,5"0. E $5.,5"@": uma nota'(o para representar o flu)o de controle. &ada constru'(o estruturada tem um s:m4olo de grafo correspondente.

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

)a&inho %ndependente
Qualquer caminho atra!s do programa que introdu/a pelo menos um no!o con%unto de instru'Ies de processamento ou uma no!a condi'(o.

Tcnicas e Estratgias de Teste de Software

35

&on%unto Gsico para o ,rafo de 0lu)o !a'in(o +: <3<< !a'in(o ,: <3=333N353<K3<3<< !a'in(o -: <3=333P3Q3R3<K3<3<< !a'in(o .: <3=333P3S3R3<K3<3<<

,rafo de 0lu)o

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

)o&ple$idade )iclo&+tica
M uma mtrica de software que proporciona uma medida quantitati!a da comple)idade lHgica de um programa. Quando usado no conte)to do mtodo de teste de caminho 4sico# o !alor computado da comple)idade ciclomtica define o nTmero de ca'in(os independentes do con%unto 4sico de um programa e oferece um li'ite '"i'o para o nTmero de testes que de!e ser reali/ado para garantir que todas as instru'Ies se%am e)ecutadas pelo menos uma !e/. " comple)idade ciclomtica computada numa das 3 formas seguintes: <3 . nTmero de regiIes do grfico de flu)o. =3 6*,- E E3?U= onde E o nTmero de ramos do grafo e ? o nTmero de nHs do grafo de flu)o , 33 6*,- E $U< onde $ o nTmero de nHs predicati!os *nHs que contm uma condi'(o- contidos no grafo de flu)o ,
Tcnicas e Estratgias de Teste de Software 35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

E$e&plo de )o&ple$idade )iclo&+tica


&omple)idade &iclomtica <3 . grafo de flu)o tem N regiIes =3 6*,- E << ramos 3 R nHs U = E N 33 6*,- E 3 nHs predicati!os U < E N ,rafo de 0lu)o " &omple)idade &iclomtica do grafo de flu)o N

Tcnicas e Estratgias de Teste de Software

35

. !alor de 6*,- oferece um limite m)imo no nTmero de testes que de!e ser pro%etado e e)ecutado para garantir a co4ertura de todas as instru'Ies de programa.

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

Deri!ando )asos de Teste , -assos do .todo


+/ Usando o pro)eto ou o cdigo co'o *ase trace u' grafo de flu"o correspondente

Tcnicas e Estratgias de Teste de Software

35

procedimento MAIOR(A:VETOR; T:inteiro; var MAX:inteiro); variaveis I,M:inteiro Inicio M A[1]; I ; en!"anto I T #a$a se A[I] % M ent&o MA[I] II'1 sen&o II'1 #im se /, 0, 1, 2, Tcnicas 3e , Estratgias de Teste de Software 35 #im en!"anto MAXM; #im do procedimento

Teste de )ai$a *ranca , Teste de )a&inho *+sico

Deri!ando )asos de Teste , -assos do .todo


,/ Deter'ine a !o'ple"idade !iclo'tica do grafo de flu"o resultante

&omple)idade &iclomtica <3 . grafo de flu)o tem 3 regiIes =3 6*,- E R ramos 3 Q nHs U = E 3 33 6*,- E = nHs predicati!os U < E 3 " &omple)idade &iclomtica 3
Tcnicas e Estratgias de Teste de Software 35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

Deri!ando )asos de Teste , -assos do .todo


-/ Deter'ine u' con)unto *sico de ca'in(os linear'ente independentes ca'in(os# -

&aminhos &aminho <: &aminho =: &aminho 3: <# =# 3# R# <K <# =# 3# N# 5# P# Q# 3# R# <K <# =# 3# N# S# Q# 3# R# <K

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a *ranca , Teste de )a&inho *+sico

Deri!ando )asos de Teste , -assos do .todo


./ &repare os casos de teste 0ue force' a e"ecuo de cada ca'in(os no con)unto *sico/

Tcnicas e Estratgias de Teste de Software

35

procedimento MAIOR(A:VETOR; T:inteiro; var MAX:inteiro); variaveis I,M:inteiro Inicio /, 0, 1, 2, 3, 4, 5, 6, 7, /8 , M A[1]; I ; en!"anto I T #a$a se A[I] % M ent&o MA[I] II'1 sen&o II'1 #im se #im en!"anto MAXM; #im do procedimento

&aminhos !a'in(o +: <# =# 3# R# <K "E*<#3TEK 5esultado Esperado EF @a)E< !a'in(o ,: <# =# 3# N# 5# P# Q# 3# R# <K "E*<#3TE= 5esultado Esperado EF @a)E3 !a'in(o -: <# =# 3# N# S# Q# 3# R# <K "E*3#<TE= 5esultado Esperado EF @a)E3
35

Tcnicas e Estratgias de Teste de Software

Teste de )ai$a -reta


&oncentram3se nos requisitos funcionais do software# ou se%a# s(o testes que e)ercitam completamente os requisitos funcionais do programa. Trata3se de uma a4ordagem complementar aos testes de cai)a 4ranca# com a finalidade de desco4rir tiposJclasses de erros *e). tratamento incorreto de todos os dados tipo caractere-.

Tipos de testes de &ai)a $reta =L $articionamento da Equi!alncia 3L "nlise do 6alor 1imite

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a -reta ,

-articiona&ento de E9#i!al:ncia
M um mtodo de teste que di!ide o do'1nio de entrada de um programa em classes de dados e0uival2ncia# a partir das quais os casos de teste podem ser deri!ados. <3 Se o dom:nio de entrada e)igir um intervalo# s(o definidas uma classe de equi!alncia !lida e duas classes de equi!alncia in!lidas. =3 Se o dom:nio de entrada e)igir um valor espec1fico# s(o definidas uma classe de equi!alncia !lida e duas classes de equi!alncia in!lidas. 33 Se o dom:nio de entrada especificar um mem4ro de um con)unto# uma classe de equi!alncia !lida e uma classe de equi!alncia in!lida s(o definidas. N3 Se o dom:nio de entrada for *ooleano# uma classe de equi!alncia !lida e uma classe de equi!alncia in!lida s(o definidas. .s casos de teste s(o definidos para cada classe de equi!alncia

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a -reta ,

-articiona&ento de E9#i!al:ncia , E$e&plo


>ma aplica'(o 4ancria automati/ada: O usurio pode 3discar3 para o *anco usando seu co'putador pessoal4 fornecer sen(a de 5 d1gitos e seguir u'a s6rie de co'andos$c(ave 0ue aciona' vrias fun7es *ancrias/ . software fornecido ; aplica'(o 4ancria aceita dados da seguinte forma: !digo de 8rea: em 4ranco ou nTmero de 3 d:gitos &refi"o: nTmero de 3 d:gitos que n(o se iniciam por K ou < Sufi"o: nTmero de N d:gitos Sen(a: !alor alfanumrico de P d:gitos !o'andos: VchequeV# VdepHsitoV# Vpagamento de contaV# etc.

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a -reta ,

-articiona&ento de E9#i!al:ncia , E$e&plo


iretri/es +tem de ados &Hdigo de Wrea $refi)o Sufi)o Senha &omando om:nio de Entrada *oolena9 o cHdigo de rea pode ou n(o estar presente intervalo9 !alores definidos entre =KK e RRR intervalo9 !alor especificado F =KK valor9 e)tens(o de quatro d:gitos *ooleana9 uma senha pode ou n(o estar presente valor9 string de P caracteres con)unto9 contendo os comandos anotados acima

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a -reta ,

"n+lise de ;alor <i&ite


" "nlise de 6alor 1imite *GoundarX 6alue "nalXsis 3 G6"- uma tcnica de pro%eto de casos de teste que complementa o particionamento de equi!alncia. Em !e/ de selecionar qualquer elemento de uma classe de equi!alncia# a G6" le!a ; sele'(o de casos de teste nas Ve)tremidadesV da classe *por ra/Ies que n(o s(o completamente claras# um nTmero cada !e/ maior de erros tende a ocorrer nas fronteiras do dom:nio de informa'(oEm !e/ de se concentrar somente nas condi'Ies de entrada# a G6" deri!a os casos de teste tam4m no dom:nio de sa:da.

Tcnicas e Estratgias de Teste de Software

35

Teste de )ai$a -reta ,

"n+lise de ;alor <i&ite , Diretrizes


<3 Se uma condi'(o de entrada especificar um intervalo delimitado pelos !alores a e *# os casos de teste de!em ser pro%etados com !alores a e *# logo acima e logo a4ai)o de a e *# respecti!amente. =3 Se uma condi'(o de entrada especificar uma srie de !alores# os casos de teste que ponham ; pro!a nTmeros m)imos e m:nimos de!em ser desen!ol!idos. 6alores logo a4ai)o e logo acima do m:nimo e do m)imo tam4m de!em ser testados 33 "plique as diretri/es < e = ;s condi'Ies de sa:da. $or e)emplo# suponhamos que uma ta4ela de temperatura !ersus press(o se%a e)igida como sa:da de um programa de anlise de engenharia. .s casos de teste de!em ser pro%etados para criar um relatHrio de sa:da que produ/a um nTmero m)imo *e m:nimopermiss:!el de entradas na ta4ela. N3 Se as estruturas internas de dados do programa ti!erem prescrito fronteiras *por e)emplo# um arraX tem um limite definido de <KK entradas-# certifique3se de pro%etar um caso de teste para e)ercitar a estrutura de dados em sua fronteira.
Tcnicas e Estratgias de Teste de Software 35

Testes *aseados e& Erros


&onsiste em incluir propositalmente algum erro no programa e o4ser!ar o comportamento do programa com erro comparando3o com o comportamento do programa original. 0ornecem indicadores para gerenciar o processo de teste *porcentagem de erros remanescentes# qualidade dos casos de testes-

Tipos de testes 4aseados em erros NL Semeadura de Erros 5L "nlise de @utantes

Tcnicas e Estratgias de Teste de Software

35

Teste baseado e& erros , Se&ead#ra de Erros


PL Erros artificiais s(o introdu/idos no programa SL 5eali/a3se um caso de teste para !erificar quais s(o erros naturais e quais s(o artificiais QL Gaseados na propor'(o erros naturaisJartificiais pode3se estimar a quantidade de erros remanescentes para o con%unto de casos de teste definidos para o programa. esta forma pode3se comparar a estimati!a de erros remanescentes com a confia4ilidade esperada *especificada- para o software.

Tcnicas e Estratgias de Teste de Software

35

Teste baseado e& erros , "n+lise de .#tantes


Esta tcnica empregada para a!aliar o quanto um con%unto de casos de teste adequado para testar um dado programa. RL ,era3se casos de teste *T- para um programa *$<KL 6erifica3se se ele funciona corretamente <<L ,era3se programa mutantes *@-: programas que possuam pequenas mudan'as em rela'(o ao original <=L 6erifica3se o funcionamento do mutante *@- para os casos de teste *T-: caso a !erifica'(o de @ apresentar resultados diferentes da !erifica'(o de $ o mutante YmortoZ caso contrrio# @ continua Y!i!oZ e de!e ser analisado <3L "nlise dos mutantes !i!os o mutante @ equi!alente ao programa original $ o caso de teste insuficiente para diferenciar @ de $ e no!os casos de teste de!em ser definidos
Tcnicas e Estratgias de Teste de Software 35

=&a Estratgia de Teste de Software

Teste de Unidade: concentra3se em cada unidade do software# de acordo com o que implementado no cHdigo fonte. >tili/a as tcnicas de teste de cai)a 4ranca e cai)a preta. Teste de Integrao: concentra3se no pro%eto e na constru'(o da arquitetura de software. >tili/a principalmente as tcnicas de teste de cai)a preta. Teste de Validao: os requisitos esta4elecidos como parte da anlise de requisitos de software s(o !alidados em rela'(o ao software que foi constru:do. "lfa3 e Geta3teste. Teste de Siste'a: o software e outros elementos do sistema s(o testados como um todo. Teste de seguran'a e recupera'(o.
Tcnicas e Estratgias de Teste de Software 35

Teste de =nidade

" interface com o mHdulo testada para ter a garantia de que as informa'Ies fluem para dentro e para fora da unidade de programa que se encontra so4 teste. " estrutura de dados local e)aminada para ter a garantia de que dados arma/enados temporariamente mantm sua integridade durante todos os passos de e)ecuc(o. "s condi7es de li'ite s(o testadas para ter a garantia de que o mHdulo opera adequadamente nos limites esta4elecidos para demarcarem ou restringirem o processamento. Todos os ca'in(os independentes atra!s da estrutura de controle s(o e)ercitados para ter a garantia de que todas as instru'Ies de um mHdulo foram e)ecutadas pelo menos uma !e/. Todos os ca'in(os de trata'ento de erros s(o testados.

Tcnicas e Estratgias de Teste de Software

35

Teste de =nidade , "&biente

>m !e/ que o mHdulo n(o um programa indi!idual# um software driver eJou stu* de!e ser desen!ol!ido para cada unidade de teste. Driver 3 na maioria das aplica'Ies um programa principal que aceita dados de caso de teste# passa tais dados para o mHdulo a ser testado e imprime os dados rele!antes. Stu* ou programa simulado 3 ser!em para su4stituir mHdulos que este%am su4ordinados *chamados pelo- ao mHdulo a ser testado. >sa a interface do mHdulo su4ordinado# pode fa/er manipula'(o de dados m:nima# imprime !erifica'(o de entrada e retorna.
Tcnicas e Estratgias de Teste de Software 35

Teste de %ntegrao
. o4%eti!o # a partir dos mHdulos testados ao n:!el de unidade# construir a estrutura de programa que foi determinada pelo pro%eto.

Tcnicas e Estratgias de Teste de Software

35

Integrao op!"own
.s mHdulos s(o integrados mo!imentando3se de cima para 4ai)o# atra!s da hierarquia de controle# iniciando3se do mHdulo de controle principal. .s mHdulos su4ordinados ao mHdulo de controle principal s(o incorporados ; estrutura de uma maneira dept($first *primeiro pela profundidade- ou *readt($first *primeiramente pela largura-.

Tcnicas e Estratgias de Teste de Software

35

Teste de %ntegrao

, %ntegrao Top,Down

$assos do processo de integra'(o: <3 . mHdulo de controle usado como um driver de teste e os stu*s s(o su4stitu:dos para todos os mHdulos diretamente su4ordinados ao mHdulo de controle principal. =3 ependendo da a4ordagem de integra'(o escolhida# os stu*s su4ordinados s(o su4stitu:dos# um de cada !e/ por mHdulos reais. 33 Testes s(o reali/ados ; medida que cada mHdulo integrado. N3 urante a conclus(o de cada con%unto de testes# outro stu* su4stitu:do pelo mHdulo real. 53 Teste de regresso 3 *isto # a reali/a'(o de todos ou de alguns dos testes anteriores- pode ser reali/ado a fim de garantir que no!os erros n(o tenham sido introdu/idos.

Tcnicas e Estratgias de Teste de Software

35

Teste de ;alidao
"o trmino da ati!idade de teste de integra'(o# o software est completamente montado como um pacote# erros de interface foram desco4ertos e corrigidos e uma srie final de testes de software 3 os testes de validao 3 pode iniciar3se. " !alida'(o 4em sucedida quando o software funciona de uma maneira ra/oa!elmente esperada pelo cliente. " Especificao de :e0uisitos de Soft;are contm os crit6rios de validao que formam a 4ase para uma a4ordagem ao teste de !alida'(o. " !alida'(o do software demonstram a conformidade com os requisitos. . plano e o procedimento de teste s(o pro%etados para garantir que: todos os requisitos funcionais se%am satisfeitos todos os requisitos de desempenho se%am conseguidos a documenta'(o este%a correta outros requisitos se%am cumpridos: porta4ilidade# compati4ilidade# remo'(o de erros e manuteni4ilidade
Tcnicas e Estratgias de Teste de Software 35

Teste de ;alidao

, Re!iso de )onfig#rao

>m elemento importante do processo de !alida'(o a reviso de configurao ou auditoria/ . propHsito dessa re!is(o garantir que todos os elementos da configura'(o de software tenham sido adequadamente desen!ol!idos# est(o catalogados e tm os detalhes necessrios para apoiar a fase de manuten'(o do ciclo de !ida do software.

Tcnicas e Estratgias de Teste de Software

35

Teste de ;alidao

, Testes "lfa e *eta

M !irtualmente imposs:!el que se pre!e%a como o cliente real'ente usar um programa. "s instru'Ies de uso podem ser mal3interpretadas# com4ina'Ies estranhas de dados podem ser regularmente usadas# sa:das que pareciam claras ao analista podem ser inintelig:!eis para um usurio em campo.
S.0TD"5E &>ST.@+[" . $"5" >@ &1+E?TE 3

s(o reali/ados testes de aceitao# reali/ados pelo usurio final para capacit3lo e para !alidar todos os requisitos. pode !ariar de um test drive informal a uma srie de testes plane%ados.
S.0TD"5E ESE?6.16+ . &.@. >@ $5. >T. $"5" @>+T.S &1+E?TES 3

Teste <lfa 3 M le!ado a efeito por um cliente nas instala'Ies do desen!ol!edor. . software usado num am4iente controlado com o desen!ol!edor Volhando so4re os om4rosV do usurio e registrando erros e pro4lemas de uso. Teste Beta 3 reali/ado nas instala'Ies do cliente pelo usurio final do software. . desen!ol!edor n(o est presente. . cliente registra os pro4lemas *reais ou imaginriosque s(o encontrados e relata3os ao desen!ol!edor a inter!alos regulares.
Tcnicas e Estratgias de Teste de Software 35

Teste de Siste&a
. software apenas um elemento de um sistema 4aseado em computador mais amplo. . teste de siste'a en!ol!e uma srie de diferentes testes# cu%o propHsito primordial por completamente ; pro!a o sistema 4aseado em computador. $ro4lema &lssico da ati!idade de teste de sistema: Vapontar o dedoV 3 quando ocorre um erro# o desen!ol!edor de um elemento do sistema culpa outro pelo pro4lema. . engenheiro de software de!e antecipar os pro4lemas potenciais da interface: <3 pro%etar caminhos de tratamento de erros que testem todas as informa'Ies que chegam de outros elementos do sistema. =3 reali/ar uma srie de testes que simulem dados ruins ou outros erros em potencial na interface do software. 33 registrar os resultados de teste para usar como Vpro!aV se algum lhe apontar o dedo. N3 participar do plane%amento e pro%eto dos testes do sistema para garantir que o software se%a adequadamente testado.

Tcnicas e Estratgias de Teste de Software

35

Teste de Siste&a

, Teste de Rec#perao

@uitos sistemas 4aseados em computador precisam recuperar3se de falhas e retomar o processamento dentro de um tempo pre!iamente especificado. Em certos casos# o sistema de!e tolerar falhas# isto # o processamento de falhas n(o de!e fa/er com que uma fun'(o glo4al de sistema cesse. Em outros casos# uma falha do sistema de!e ser corrigida dentro de um per:odo pre!iamente especificadoB caso contrrio# gra!es pre%u:/os econ\micos ocorrer(o. . teste de recuperao um teste de sistema que for'a o software a falhar de di!ersas maneiras e !erifica se a recupera'(o adequadamente e)ecutada.

Tcnicas e Estratgias de Teste de Software

35

Teste de Siste&a

, Teste de Seg#rana

Qualquer sistema 4aseado em computador que gerencie informa'Ies delicadas ou pro!oque a'Ies que possam impropriamente pre%udicar *ou 4eneficiar- pessoas constitui um al!o para o acesso imprHprio ou ilegal. . teste de segurana tenta !erificar se todos os mecanismos de prote'(o em4utidos num sistema o proteger(o# de fato# de acessos inde!idos. urante o teste de seguran'a# o analista desempenha o papel de pessoa que dese%a penetrar no sistema. Qualquer coisa !ale] adquirir senhas mediante contatos e)ternos atacar o sistema com software customi/ado pro%etado para derru4ar quaisquer defesas que tenham sido constru:das desarmar o sistema# negando ser!i'o a outros pro!ocar erros intencionalmente# esperando acess3lo durante a recupera'(o VfolhearV atra!s de dados inseguros esperando desco4rir a cha!e para a entrada no sistema.
Tcnicas e Estratgias de Teste de Software 35

. papel do pro%etista do sistema fa/er com que o acesso custe mais do que o !alor da informa'(o que ser o4tida.

Tcnicas e Estratgias de Teste de Software

35

Ferra&entas de "#to&atizao
e!ido a comple)idade dos softwares atuais# qualquer estratgia de teste sem suporte de ferramentas automati/adas tende a ser tra4alhosa e propensa a enganos. >ma ferramenta de teste redu/ a inter!en'(o humana nos resultados o4tidos# aumentando a qualidade e a produti!idade da ati!idade de teste. +nfluencia diretamente a confia4ilidade do software testado. Ela de!eria : <NL <5L <PL <SL $rodu/ir casos de teste que mostrassem o comportamento errado do programaB 1istar o erros re!elados e a sua locali/a'(oB $5.TESTE *>05,S- para programas em $ascalJ"nlise de 0lu)o de ados @othra *>?+&"@$- para programas em 0ortranJ"nlise de @utantes

E)emplos "cadmicos:

<QL $roteum *$rogram Testing >sing @utants- *>?+&"@$- para programas em & J"nlise de @utantes

Tcnicas e Estratgias de Teste de Software

35

Teste de -rogra&as O>O>


<RL =KL Teste de >nidade 3 .^ Teste de +ntegra'(o: Tcnica +ncremental 2ierrquica:

$ropIe3se uma estratgia de testar cada classe indi!idualmente# onde os casos de teste pro%etados para o teste de uma classe34ase possam ser apro!eitados para o teste das su43 classes. " tcnica hierrquica pois condu/ida pelo ordenamento da rela'(o de heran'asB M incremental pois usa todos os resultados de testar um n:!el de hierarquia anterior para redu/ir esfor'os desnecessrios nos n:!eis su4sequentes =<L Teste de Sistema 3 .^

Tcnicas e Estratgias de Teste de Software

35

Potrebbero piacerti anche