Vous êtes sur la page 1sur 5

Onde eu encontrei : http://www.4shared.com/dir/NUsOJyGi/Engenharia_de_Software_Magazin.html (ainda estou analisando) http://pt.wikipedia.org/wiki/Teste_de_software (tem muito assunto, precisamos ver qual importante) http://test-tools.technologyevaluation.

com/pt/

Centro de Avaliao de Ferramentas de Teste de Software

Encontre a soluo de Ferramentas de Teste de Software que melhor atende s suas necessidades empresariais.

O que so Ferramentas de Teste de Software?


As Ferramentas de Teste de Software ajudam as equipes de desenvolvimento a investigarem erros no software, verificarem a funcionalidade e se certificarem a respeito da confiabilidade e da segurana do software desenvolvido. As ferramentas esto disponveis para todos os estgios de um projeto de desenvolvimento de software. Alguns fornecedores de ferramentas de teste de software oferecem um conjunto integrado que ir suportar o teste e o desenvolvimento no decorrer do ciclo de vida de um projeto, desde o recolhimento dos requisitos at o suporte de um sistema colocado em funcionamento. Outros fornecedores enfocam em partes nicas do ciclo de vida do desenvolvimento do aplicativo.

Fatores determinantes e vantagens das Ferramentas de Teste de Software


Aumentam a qualidade do software aplicativo. Avaliam o desempenho do software. Melhoram os processos de gerenciamento do ciclo de vida do produto. Conduzem anlises comparativas e de risco. Ganham consistncia nos procedimentos de teste com ferramentas automatizadas de teste (em contraste com os testes manuais que podem ser inconsistentes).

Melhoram o tempo de comercializao como resultado da deteco eficaz de questes funcionais, de desempenho e de segurana. Economizam dinheiro com desenvolvimento de software e custos de manuteno.

Riscos de Ferramentas de Teste de Software


Os testes automatizados podem produzir quantidades elevadas de dados crus. A ferramenta de teste selecionada deve ser capaz de transformar estes dados em um formato que voc possa manipular de maneira conveniente e trabalhar com eles. essencial que a funo de injeo de falha no seja negligenciada. As ferramentas de injeo de falhas examinam os pontos fracos que podem no aparecer atravs de code paths tradicionais especialmente aqueles que so suscetveis aos ataques de segurana. Existem dois inconvenientes significativos na seleo de uma ferramenta de software inadequada: no apenas ocasiona a perda de tempo e de recursos, mas tambm cria um impedimento que as suas equipes podem achar difcil de resolver.

Por que utilizar o Centro de Avaliao de Ferramentas de Teste de Software?


Selecione a ferramenta de teste de software que melhor se adapta ao seu ambiente de desenvolvimento e de teste. Certifique-se que a ferramenta selecionada seja adequada ao seu oramentoassim como o seu conjunto de habilidades e outros requisitos. Descubra quais ferramentas de teste daro a voc o valor total. Uma ferramenta de teste de software que simplesmente reflete os testes manuais pode ser menos provvel de realar os riscos novos.

Viso geral
No se pode garantir que todo software funcione corretamente, sem a presena de erros,[1] visto que os mesmos muitas vezes possuem um grande nmero de estados com frmulas, atividades e algoritmos complexos. O tamanho do projeto a ser desenvolvido e a quantidade de pessoas envolvidas no processo aumentam ainda mais a complexidade. Idealmente, toda permutao possvel do software deveria ser testada. Entretanto, isso se torna impossvel para a ampla maioria dos casos devido quantidade impraticvel de possibilidades. A qualidade do teste acaba se relacionando qualidade dos profissionais envolvidos em filtrar as permutaes relevantes.[2] Falhas podem ser originadas por diversos motivos. Por exemplo, a especificao pode estar errada ou incompleta, ou pode conter requisitos impossveis de serem implementados, devido a limitaes de hardware ou software. A implementao tambm pode estar errada ou incompleta, como um erro de um algoritmo. Portanto, uma falha o resultado de um ou mais defeitos em algum aspecto do sistema. O teste de software pode ser visto como uma parcela do processo de qualidade de software. A qualidade da aplicao pode, e normalmente, varia significativamente de sistema para sistema. Os atributos qualitativos previstos na norma ISO 9126 so funcionalidade, confiabilidade, usabilidade, eficincia, manutenibilidade e portabilidade. De forma geral, mensurar o bom funcionamento de um software envolve compar-lo com elementos como especificaes, outros softwares da mesma linha, verses anteriores do mesmo produto, inferncias pessoais, expectativas do cliente, normas relevantes, leis aplicveis, entre outros. Enquanto a especificao do software diz respeito ao processo de verificao do software, a expectativa do cliente diz respeito ao processo de validao do software. Um desenvolvimento de software organizado tem como premissa uma metodologia de trabalho. Esta deve ter como base conceitos que visem a construo de um produto de

software de forma eficaz. Dentro desta metodologia esto definidos os passos necessrios para chegar ao produto final esperado. Assim, quando se segue uma metodologia para o desenvolvimento de um produto de software, espera-se um produto final que melhor agrade tanto aos clientes quanto ao prprio fornecedor, ou seja, a empresa de desenvolvimento. Observando este aspecto, no faz sentido iniciar a construo de um produto de software sem ter uma metodologia de trabalho bem solidificada e que seja do conhecimento de todos os envolvidos no processo. Porm, alm de uma crescente demanda por softwares de qualidade, as empresas de desenvolvimento de software sofrem cada vez mais presso por parte dos clientes para que o produto seja entregue num curto perodo de tempo. Este fato pode fazer com que uma slida metodologia de trabalho acabe por se desequilibrar. Independentemente da metodologia de trabalho empregada no desenvolvimento de um software, para que se obtenha um produto final com um certo nvel de qualidade imprescindvel a melhoria dos processos de engenharia de software. Uma maneira vivel para se assegurar a melhoria de tais processos seria tomar como base modelos sugeridos por entidades internacionais respeitadas no assunto. Dentro de uma gama de modelos, sejam eles para situaes e ambientes especficos ou para solues genricas, existem alguns que so mais utilizados e tidos como eficientes, como por exemplo os SWCMM, SE-CMM, ISO/IEC_15504 e o mais conhecido CMMI. Outro factor com grande influncia sobre a qualidade do software a ser produzido o que diz respeito aos testes que sero executados sobre tal produto. Todas as metodologias de desenvolvimento de software tm uma disciplina dedicada aos testes. Atualmente esta uma tarefa indispensvel, porm muitas vezes efetuada de maneira ineficiente, seja pelo subestimar dos que desenvolvem, pela falta de tempo ou mesmo pela falta de recursos humanos e financeiros. De acordo com um estudo conduzido pelo NIST em 2002, os defeitos resultam num custo anual de 59,5 bilhes de dlares economia dos Estados Unidos. Mais de um tero do custo poderia ser evitado com melhorias na infraestrutura do teste de software.[3]

Princpios
Para Myers (2004), h princpios vitais para o teste de software. O caso de teste deve definir a sada esperada, de forma a reduzir a interpretao do critrio de sucesso. A sada da execuo do teste deve ser exaustivamente analisada. Os casos de teste devem verificar no somente as condies invlidas de execuo, como tambm as condies vlidas. Outro conceito apresentado utilizar pessoas e organizaes diferentes para a implementao e para a verificao. A entidade de teste possui uma viso destrutiva do sistema, em busca de erros, enquanto a entidade de programao possui uma viso construtiva, em busca da implementao de uma especificao. Myers tambm aborda o esforo para se construir casos de teste. Deve-se evitar testes descartveis, pois a qualidade do teste piora gradualmente com as iteraes de desenvolvimento. Em contrapartida, h o teste de regresso, que permite quantificar a evoluo da qualidade de software, mantendo e executando novamente testes realizados anteriormente. O mesmo autor afirma que, diferente do que se poderia considerar senso comum, a probabilidade de existncia de erros num certo trecho de cdigo proporcional quantidade de erros j encontradas anteriormente. Basicamente, erros aparecem em grupos. Trechos especficos de cdigo de um software qualquer esto mais propensos a ter erros que outros

Fases
Uma prtica comum testar o software aps uma funcionalidade ser desenvolvida, e antes dela ser implantada no cliente, por um grupo de profissionais diferente da implementao. Essa prtica pode resultar na fase de teste ser usada para compensar atrasos do projeto, comprometendo o tempo devotado ao teste. Outra prtica comear o teste no mesmo momento que o projeto, num processo contnuo at o fim do projeto. Em contrapartida, algumas prticas emergentes como a programao extrema e o desenvolvimento gil focam o modelo de desenvolvimento orientado ao teste. Nesse processo, os testes de unidade so escritos primeiro ( TDD ), por engenheiros de software. Antes da implementao da unidade em questo, o teste falha. Ento o cdigo escrito, passando incrementalmente em pores maiores dos casos de teste. Os testes so mantidos junto com o resto do cdigo fonte do software, e geralmente tambm integra o processo de construo do software. Teste de unidade Tambm conhecida como teste unitrio ou teste de mdulo, a fase em que se testam as menores unidades de software desenvolvidas (pequenas partes ou unidades do sistema).[9] O universo alvo desse tipo de teste so as subrotinas ou mesmo pequenos trechos de cdigo. Assim, o objetivo o de encontrar falhas de funcionamento dentro de uma pequena parte do sistema funcionando independentemente do todo. Teste de integrao Na fase de teste de integrao, o objetivo encontrar falhas provenientes da integrao interna dos componentes de um sistema. Geralmente os tipos de falhas encontradas so de transmisso de dados. Por exemplo, um componente A pode estar aguardando o retorno de um valor X ao executar um mtodo do componente B; porm, B pode retornar um valor Y, gerando uma falha. No faz parte do escopo dessa fase de teste o tratamento de interfaces com outros sistemas (integrao entre sistemas). Essas interfaces so testadas na fase de teste de sistema, apesar de, a critrio do gerente de projeto, estas interfaces podem ser testadas mesmo antes de o sistema estar plenamente construdo. Teste de sistema Na fase de teste de sistema, o objetivo executar o sistema sob ponto de vista de seu usurio final, varrendo as funcionalidades em busca de falhas em relao aos objetivos originais. Os testes so executados em condies similares de ambiente, interfaces sistmicas e massas de dados quelas que um usurio utilizar no seu dia-a-dia de manipulao do sistema. De acordo com a poltica de uma organizao, podem ser utilizadas condies reais de ambiente, interfaces sistmicas e massas de dados. Teste de aceitao Geralmente, os testes de aceitao so realizados por um grupo restrito de usurios finais do sistema, que simulam operaes de rotina do sistema de modo a verificar se seu comportamento est de acordo com o solicitado. Teste formal conduzido para determinar se um sistema satisfaz ou no seus critrios de aceitao e para permitir ao cliente determinar se aceita ou no o sistema. Validao de um software pelo comprador, pelo usurio ou por terceira parte, com o uso de dados ou cenrios especificados ou reais. Pode incluir testes funcionais, de configurao, de recuperao de falhas, de segurana e de desempenho. Teste de operao

Nessa fase o teste conduzido pelos administradores do ambiente final em que o sistema ou software entrar em ambiente produtivo. Vale ressaltar que essa fase aplicvel somente a sistemas de informao prprios de uma organizao, cujo acesso pode ser feito interna ou externamente a essa organizao. Nessa fase de teste devem ser feitas simulaes para garantir que a entrada em produo do sistema ser bem sucedida. Envolve testes de instalao, simulaes com cpia de segurana dos bancos de dados, etc.. Em alguns casos um sistema entrar em produo para substituir outro e necessrio garantir que o novo sistema continuar garantindo o suporte ao negcio. Testes alfa e beta Em casos especiais de processos de desenvolvimento de software sistemas operacionais, sistemas gerenciadores de bancos de dados e outros softwares distribudos em escala nacional e internacional os testes requerem fases tambm especiais antes do produto ser disponibilizado a todos os usurios. O perodo entre o trmino do desenvolvimento e a entrega conhecido como fase alfa e os testes executados nesse perodo, como testes alfa. PRESSMAN afirma que o teste alfa conduzido pelo cliente no ambiente do desenvolvedor, com este "olhando sobre o ombro" do usurio e registrando erros e problemas de uso. Completada a fase alfa de testes, so lanadas a grupos restritos de usurios, verses de teste do sistema denominadas verses beta. Ele tambm um teste de aceitao voltado para softwares cuja distribuio atingir grande nmero de usurios de uma ou vrias empresas compradoras. PRESSMAN afirma que o teste beta conduzido em uma ou mais instalaes do cliente, pelo usurio final do software. Diferente do teste alfa, o desenvolvedor geralmente no est presente. Conseqentemente, o teste beta uma aplicao do software num ambiente que no pode ser controlado pelo desenvolvedor. O cliente registra todos os problemas (reais ou imaginrios) que so encontrados durante o teste beta e os relata ao desenvolvedor em intervalos regulares. Com o resultado dos problemas relatados durante os testes beta, os engenheiros de software fazem modificaes e depois se preparam para liberar o produto de software para toda a base de clientes. A comunidade do teste de software usa o termo teste gama de forma sarcstica referindo-se aos produtos que so mal testados e so entregues aos usurios finais para que estes encontrem os defeitos j em fase de produo.

Vous aimerez peut-être aussi