Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE DE PROJETOS

1.309 visualizações

Publicada em

Este trabalho descreve a importância do teste de software nas organizações e seus fundamentos. Tal abordagem se justifica na demonstração dos fundamentos básicos do teste de software, para aqueles que desejam aplicar seus fundamentos em projetos de software e os impactos que sua falta pode causar nos negócios das organizações.

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.309
No SlideShare
0
A partir de incorporações
0
Número de incorporações
104
Ações
Compartilhamentos
0
Downloads
41
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Artigo - OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE DE PROJETOS

  1. 1. 1 OS FUNDAMENTOS DE TESTE DE SOFTWARE E SUA IMPORTÂNCIA NA QUALIDADE DE PROJETOS Luiz Paulo Ladeira* Matheus Guedes** RESUMO Este trabalho descreve a importância do teste de software nas organizações e seus fundamentos. Tal abordagem se justifica na demonstração dos fundamentos básicos do teste de software, para aqueles que desejam aplicar seus fundamentos em projetos de software e os impactos que sua falta pode causar nos negócios das organizações. A finalidade deste estudo é compreender os conceitos de testes de software e seu processo fundamental como também projetar, priorizar, criar e executar planos de teste de acordo com planos aprovados, escrever relatórios de incidentes de acordo com técnicas estabelecidas como também demonstrar a importância da realização do teste de software nas organizações. Este propósito será conseguido através de revisão bibliográfica, onde serão pesquisados periódicos (livros, revistas, sites especializados, entre outros), para compreender os conceitos e esclarecer quais são os fundamentos do teste de software. O estudo demonstrou que o teste de software é muito importante para empresas, setores de desenvolvimento e profissionais de tecnologia da informação por reduzirem o máximo número de defeitos que se encontra em seus produtos fabricados ou vendidos. O impacto que a inexistência do teste de software e a falta de profissionais qualificados podem causar enormes prejuízos como perdas de mercados ou danos na imagem dos produtos, pois afeta diretamente sua usabilidade, funcionalidade, segurança e confiabilidade nos sistemas. Palavras-chave: Teste de Software. Qualidade de Sistemas. Programas confiáveis. * Analista de Sistemas, graduação tecnológica em Análise e Desenvolvimento de Sistemas pelo Centro Universitário do Sul de Minas e pós graduando em engenharia de software com desenvolvimento em JAVA. luizpauloladeira@hotmail.com **Professor orientador, especialista MBA em Gestão Estratégica e Inteligência em Negócios pelo Centro Universitário do Sul de Minas. matheus.guedes@unis.edu.br
  2. 2. 2 1 INTRODUÇÃO Este trabalho demonstra a importância da realização de teste de softwares, seus fundamentos e os impactos que sua falta pode causar nos negócios das organizações. O teste de software é muito importante em empresas e setores de desenvolvimento de software, por reduzirem grandes números de defeitos que afetam sua usabilidade, funcionalidade, segurança e a confiabilidade dos sistemas. Sua falta tem impactos decisivos nos negócios, resultando assim em enormes prejuízos como perdas de participação de mercado ou danos na imagem dos produtos. Sabe-se também que um teste malfeito pode significar um caminho aberto para diversos problemas graves como, por exemplo: fraudes, incorreções e outros. Muitas vezes os usuários acabam abandonando o sistema ou site por insatisfação com sua usabilidade e/ou funcionalidade, causando enormes prejuízos à imagem da organização e produto. Tal abordagem se justifica na demonstração dos fundamentos básicos do teste de software, sua importância para os negócios das organizações, quanto para aqueles que desejam aplicar seus fundamentos em projetos de software. É importante ressaltar também a contribuição para o público de tecnologia da informação ou áreas afins que desejam ingressar como testadores de software ou obter a certificação CTFL. A finalidade deste estudo é compreender os conceitos de testes de software e seu processo fundamental como também projetar, priorizar, criar e executar planos de teste de acordo com planos aprovados, escrever relatórios de incidentes de acordo com técnicas estabelecidas como também demonstrar a importância da realização do teste de software nas organizações. Este propósito será conseguido através de revisão bibliográfica, onde serão pesquisados periódicos (livros, revistas, sites especializados, entre outros), para compreender os conceitos e esclarecer quais são os fundamentos necessários para obtenção da certificação CTFL. 2 O QUE É TESTE DE SOFTWARE E QUAL A SUA IMPORTÂNCIA Existem diversas definições para teste de software, mas segundo o glossário de termos padrões da International Software Testing Qualifications Board (ISTQB) temos: Teste é o processo que consiste em todas as atividades do ciclo de vida, tanto estáticas quanto dinâmicas, voltadas para o planejamento, preparação e avaliação de produtos de software e produtos de trabalho relacionados a fim de determinar se elas satisfazem os requisitos especificados e demonstrar que estão aptas para sua finalidade e para a detecção de defeitos. (GLOSSÁRIO..., 2011)
  3. 3. 3 Muitas outras definições poderiam ainda ser citadas, porém seu aspecto essencial se encontra no processo que visa à execução do software de forma controlada, tendo como objetivo a avaliação do seu comportamento baseado no propósito que foi especificado. Sendo assim, a execução dos testes é considerada um tipo de validação (RIOS; MOREIRA, 2013). Segundo (RIOS; MOREIRA, 2013, p.10): “Na prática, não se pode testar um software por completo e garantir que ele ficará livre de bugs1 . É quase impossível testar todas as possibilidades de formas e alternativas de entrada de dados, bem como testar as diversas possibilidades e condições criadas pela lógica do programador”. Os softwares estão cada vez mais presentes em nossa vida, desde aplicações simples (sistemas comerciais) até aplicações complexas (sistemas hospitalares). Por esse motivo, a importância do teste de software se encontra em reduzir os riscos para o negócio, diminuir custos, reduzir a probabilidade de defeitos, identificar falhas no desenvolvimento do software e corrigi- las antes que o produto seja entregue para o cliente (ARAUJO, 2013). Para que seja reduzido as vulnerabilidades "os testes devem ser integrados como uma das atividades de garantia da qualidade (ex.: juntamente aos padrões de desenvolvimento, treinamento e análise de defeitos)." (BASE..., 2005, p. 11-12) Para dar continuidade neste artigo será abordado no próximo tópico os impactos que soluções problemáticas podem causar nos negócios das organizações. 3 IMPACTOS QUE SOLUÇÕES PROBLEMÁTICAS PODEM CAUSAR NOS NEGÓCIOS DAS ORGANIZAÇÕES O ser humano está sujeito a cometer erros, que produz defeitos, no código, em um software, sistema e outros. Os defeitos ocorrem porque existe pressão no prazo, códigos complexos, complexidade na infra-estrutura, mudanças de tecnologias ou muitas interações de sistema. Se um defeito no código for executado, o sistema falhará ao tentar fazer o que deveria ou não ser realizado causando assim uma falha (BASE..., 2005, p. 11). Segundo (MYERS, 1979) os defeitos encontrados nas fases iniciais da etapa de desenvolvimento do software são mais baratos de serem corrigidos do que aqueles encontrados na produção, isto é, quanto menos defeitos permanecerem no software menor será o custo da sua manutenção no futuro. 1 Bugs são falhas ou erros encontrados emum programa computacional, que o impede de se comportar como pretendido.
  4. 4. 4 Diante disso, os testes de software alinhados a conceitos de qualidade, modelos de melhoria de processos de teste e as boas práticas do Gerenciamento de Qualidade podem aumentar as perspectivas de sucesso do projeto (ARAUJO, 2013). Para dar continuidade neste artigo será abordada no próximo tópico sobre o ISTQB e a certificação CTFL. 4 O ISTQB E A CERTIFICAÇÃO CTFL O International Software Testing Qualifications Board (ISTQB) é uma entidade internacional sem fins lucrativos, cujo objetivo é oferecer globalmente uma estrutura de certificação em testes de software. Fundada em 2002 na Escócia e hoje tem sua sede estabelecida na Bélgica (FARACO, 2011). Para ajudar a divulgar as melhores práticas o ISTQB possui diversos parceiros no mundo inteiro, inclusive no Brasil através do Brazilian Software Testing Qualifications Board (BSTQB) que é responsável pela promoção das certificações e aplicações dos exames no país, assim pela tradução de documentação oficiais da entidade para a língua portuguesa. Seu objetivo é definir e manter padrões de conhecimento que permite aos testadores serem certificados baseando-se nas melhores práticas que se encontram no mercado (MEDEIROS, 2014). A certificação abordada nesse artigo é Certified Tester Foundation Level conhecida pela sigla CTFL, trata-se da certificação de nível fundamental destinado a qualquer pessoa envolvida em testes de softwares. Isto implica em pessoas que desenvolvem funções como testadores, analistas, consultores, gerentes de teste e outros que deseja ter um entendimento básico de teste de software (GUIA...,2013). Os possuidores da certificação CTFL serão capazes de prosseguir para maiores níveis de qualificação em teste de software pelo ISTQB. Basicamente as certificações estão organizadas em três níveis sendo eles: Foundation (Fundamental ou Básico), Advanced (Avançado) e Expert (Especialista). No nível Foundation encontra-se a certificação Certified Tester Foundation Level (CTFL), no nível Advanced estão às certificações Technical Teste Analyst (CTAL-TTA), Test Analyst (CTAL-TA), Test Manager (CTAL-TM) e no nível Expert estão às certificações Security Testing (CTEL-ST), Test Automation (CTEL-TA), Test Management (CTEL-TM) e Improvingthe Test Process (CTEL-ITP) (MEDEIROS, 2014).
  5. 5. 5 O objetivo da CTFL consiste em garantir uma ampla compreensão dos fundamentos e conceitos principais do teste de software, utilizando assim, uma linguagem comum para a comunicação com outros testadores, compreender os conceitos de testes estabelecidos utilizando o processo fundamental de teste, projetar, priorizar, executar os testes de acordo com os planos de testes aprovados e escrever relatórios de incidentes (GUIA..., 2013?, p. 4). Para dar continuidade neste artigo será abordada no próximo tópico as atividades do teste de software e seus processos fundamentais. 4.1 As atividades do teste de software e seus processos fundamentais As atividades de teste de software são compostas por elementos fundamentais que auxiliam na formalização dessa atividade. Esses elementos são:  Caso de teste: descreve uma condição privada a ser testada, ela é composta por valores de entrada, condições que restringem sua execução e um conduta esperada (CRAIG e JASKIEL, 2002).  Procedimento de teste: descreve as partes necessárias para executar um caso ou grupo de teste (CRAIG e JASKIEL, 2002).  Critérios de teste: é um selecionador e avaliador dos casos de testes que contém o objetivo de aumentar as possibilidades de provocar erros/falhas no software. Quando não é encontrado nenhum erro é estabelecido um nível excessivo de confiança na correção do produto. (ROCHA, MALDONADO; WEBER, 2001) Os processos fundamentais do teste deve-se basear em uma metodologia firmemente ligada ao processo de desenvolvimento, contendo profissionais qualificados, ambiente e ferramentas adequadas (RIOS; MOREIRA, 2013). A metodologia de teste deve ser o documento básico para organizar a atividade de testar aplicações no contexto da empresa. Como o desenvolvimento de sistemas é indesejável sem uma metodologia de desenvolvimento adequada, também acontece com a atividade de teste. O desenho da figura abaixo 1.0 mostra as fases de um processo de teste (RIOS; MOREIRA, 2013).
  6. 6. 6 Figura 1 - Fases de um processo Fonte: RIOS; MOREIRA, 2013, p. 11. Segundo (RIOS; MOREIRA, 2013) as fases de um processo são:  Procedimentos iniciais: é elaborado um documento conhecido como Guia Operacional de Testes (GOT), onde é estabelecido um acordo entre as partes envolvidas no projeto, com o intuito de definir os objetivos, pessoas a serem envolvidas (equipes de desenvolvimento, testes e usuários), as responsabilidades de cada um, plano preliminar de trabalho, avaliação dos riscos, os níveis de serviços concordados entre os envolvidos e qualquer item considerado relevante pelo responsável das atividades de testes.  Planejamento: é realizado a elaboração e revisão das estratégias e plano de teste.  Processo de preparação: é preparado o ambiente de teste, incluindo equipamentos, redes, pessoas, softwares e ferramentas.  Execução: são executados os testes planejados conforme os casos, scripts (caso utiliza ferramentas de automação de testes) e dos roteiros ou cenários com os correspondentes registros dos resultados obtidos e a execução dos mesmos de verificação da documentação do sistema (testes estáticos).  Entrega: é a conclusão do processo de teste com entrega do sistema para o ambiente de produção. Para dar continuidade neste artigo será abordado no próximo tópico os testes estáticos e dinâmicos.
  7. 7. 7 4.2 Teste Estático e Teste Dinâmico Na literatura, foram encontradas muitas classificações para teste de software, entre elas destaca-se a condição de execução em que o software se encontra. Assim, os testes podem ser classificados em estáticos e dinâmicos. O teste estático é aplicado quando o software não está em execução e compreende todas as técnicas baseadas em inspeções de código (Hauget al., 2001; Peters&Pedrycz, 2001). As técnicas mais comuns são as inspeções de código, walkthroughs (passo a passo) e teste de mesa, quando o código é analisado por uma equipe de pessoas ou por uma pessoa com o objetivo de encontrar erros. A análise estática ou teste estático, segundo (Peters e Pedrycz 2001), divide-se em duas classes: 1. Técnicas formais: fazem parte das técnicas formais as provas de correção e execução simbólica. Nas provas de correção, o código é comparado com a sua especificação, e, na execução simbólica, os valores numéricos são substituídos por símbolos, procurando-se simular a execução do programa no computador; 2. Técnicas informais: são divididas em inspeções e revisões de código, onde uma pessoa ou uma equipe analisa um projeto ou código. Já os testes dinâmicos contemplam técnicas que tem como objetivo a analise da estrutura e funcionalidade de um software quando está em execução (Hauget al., 2001). Para dar continuidade neste artigo será abordado no próximo tópico sobre os tipos de testes de software. 4.3 Tipos de Testes O teste de software consiste em mais do que avaliar as funções, a interface e as características de tempo de resposta de um objetivo do teste. Os testes adicionais devem-se concentrar em características e atributos, contendo os objetivos do teste resistente a falhas, com capacidade de ser executado em diferentes plataformas e de lidar com várias solicitações ao mesmo tempo. Para que isso seja alcançado, vários tipos de teste são realizados, cada um com um objetivo e uma técnica de suporte específico. O foco de cada técnica está em testar uma ou mais características ou atributos do objetivo do teste (CONCEITOS..., 2001). Segue alguns dos principais tipos de teste de sistema:
  8. 8. 8 Tabela 1 – Principais Tipos de Teste de Sistema Teste de Unidade Teste em um nível de componente ou classe. É o teste cujo objetivo é um “pedaço do código”. Teste de Integração Garante que um ou mais componentes combinados (ou unidades) funcionam. Podemos dizer que um teste de integração é composto por diversos testes de unidade*1 Teste Operacional Garante que a aplicação pode rodar muito tempo sem falhar. Teste Positivo- negativo Garante que a aplicação vai funcionar no “caminho feliz” de sua execução e vai funcionar no seu fluxo de exceção. *2 Teste de regressão Toda vez que algo for mudado, deve ser testada toda a aplicação novamente. Teste de caixa- preta Testar todas as entradas e saídas desejadas. Não se está preocupado com o código, cada saída indesejada é visto como um erro. Teste caixa- branca O objetivo é testar o código. Às vezes, existem partes do código que nunca foram testadas. Teste Funcional Testar as funcionalidades, requerimentos, regras de negócio presentes na documentação. Validar as funcionalidades descritas na documentação (pode acontecer de a documentação estar inválida) Teste de Interface Verifica se a navegabilidade e os objetivos da tela funcionam como especificados e se atendem da melhor forma ao usuário. Teste de Performance Verifica se o tempo de resposta é o desejado para o momento de utilização da aplicação. Teste de carga Verifica o funcionamento da aplicação com a utilização de uma quantidade grande de usuários simultâneos. Teste de aceitação do usuário Testa se a solução será bem vista pelo usuário. Ex: caso exista um botão pequeno demais para executar uma função, isso deve ser criticado em fase de testes. (aqui, cabem quesitos fora da interface, também). Teste de Volume Testar a quantidade de dados envolvidos (pode ser pouca, normal, grande, ou além de grande). Testes de stress Testar a aplicação sem situações inesperadas. Testar caminhos, às vezes, antes não previstos no desenvolvimento/documentação. Testes de Configuração Testar se a aplicação funciona corretamente em diferentes ambientes de hardware ou de software. Testes de Instalação Testar se a instalação da aplicação foi OK. Testes de Segurança Testar a segurança da aplicação das mais diversas formas. Utilizar os diversos papéis, perfis, permissões, para navegar no sistema. Fonte: Leonardo Molinari, 2012.
  9. 9. 9 Vários outros tipos de testes são possíveis, mas é necessário saber quais são os requisitos funcionais e não funcionais do negócio a ser tratado para que possa ser definido exatamente quais os níveis de testes que pretende estabelecer para a aplicação, afinal testar demais é tão desprovido quanto testar pouco (PALMA, 2012). Para dar continuidade neste artigo será abordado no próximo tópico como planejar o teste de software. 4.4 Planejamento, Casos de Teste e execução Durante a etapa de projeto é necessário entender quais são as metas e objetivos do projeto e do cliente, quais são os riscos e principalmente, qual é o escopo do projeto (quais funcionalidades devem ser testadas e quais atividades devem ser realizadas para testar tais funcionalidades). É nesta etapa que é criado o plano de teste (WEISS, 2011). O plano de teste é um dos documentos produzidos na condução de um projeto. Nele estão contidas informações importantes como pessoas envolvidas, objetivos do teste, módulos ou partes do software a serem testados, os critérios de aceitação e os passos necessários para executar os testes (ANDRADE; VIANA, 2012). Segundo (SILVA FILHO, 2009), o plano de teste pode ser elaborado pelo gerente de projeto ou gerente de testes, visando planejar as atividades a serem realizadas, definindo os métodos a serem empregados, estabelecendo métricas e formas de acompanhamento do processo. Um plano de teste deve definir:  Os itens a serem testados contendo o escopo e os objetivos do plano que devem ser estabelecidos no início do projeto;  As atividades e recursos a serem empregados contendo as estratégias de testes, recursos utilizados e qualquer restrição imposta sobre as atividades ou recursos;  Os tipos de testes a serem realizados e a ordem cronológica de sua ocorrência são estabelecidas no plano;  Os critérios para avaliar os resultados obtidos utilizando métricas bem definidas para acompanhar os resultados alcançados. O caso de teste é uma descrição de um requisito a ser testado sendo compostas por valores de entrada, condições que restringem sua execução e uma conduta esperado. O processo de
  10. 10. 10 criação de casos de testes podem também ajudar a encontrar falhas de requisitos, ou seja, identifica os cenários não tratados pelos requisitos do sistema (PIERRI, 2013). Na fase da execução são executados os testes de acordo com o plano e casos. Aqui são gerados os roteiros de teste com os resultados obtidos e scripts de teste caso seja utilizada alguma ferramenta de automação (ROESSLER, 2011). Para dar continuidade neste artigo será abordado no próximo tópico sobre os relatórios de incidentes. 4.5 Relatórios de incidentes Todo e qualquer resultado previsto e descoberto na execução dos casos de testes deve ser enviado para os desenvolvedores (programadores de sistemas) com o máximo de detalhes prováveis. Sendo assim é utilizado o relatório de incidentes, no qual são registrados todos os defeitos encontrados durante toda a fase de execução (QUEZADA, 2009). Segundo (QUEZADA, 2009) a norma Standard for Software Test Documentation (IEE 829) o relatório de incidentes deve ter as seguintes informações:  Identificador do relatório: identificar único e específico para o relatório;  Sumário da ocorrência: possui um resumo do incidente que aborda os seguintes itens: 1. Identificação dos itens de testes que estão relacionados apontando sua versão; 2. Acréscimo da referência na especificação do caso de teste, pois assim o programador que for realizar as correções terá o apoio do documento de teste; 3. Documento de requisitos; 4. Relatório de registros de teste se necessário.  Descrição do Incidente: fornece um resumo do incidente incluindo os seguintes itens: entradas, resultados esperados, resultados encontrados, problemas, data e hora do incidente, procedimentos para reproduzir o problema, ambiente, tentativas para repetir os problemas, testadores e observadores.  Impacto: indica qual foi o impacto que o incidente terá no plano de teste de execução. Para dar continuidade neste artigo será abordada no próximo tópico, as considerações finais.
  11. 11. 11 5 CONSIDERAÇÕES FINAIS O teste de software é uma das atividades mais complexas do processo de desenvolvimento, pois engloba grande parte dos recursos de um projeto. A rigidez e o alto custo agregado a esta atividade depende principalmente da complicação da aplicação a ser realizada. Diferentes categorias de aplicações exigem um cuidado diferenciado com as atividades de teste. Um ponto importante para que seja realizado a atividade de testar está em utilizar uma infra-estrutura adequada. Afinal, realizar testes não é baseado simplesmente em gerar e executar os casos de testes, ele envolve também nas questões de planejamento, gerenciamento e na análise de resultados. É importante evidenciar que diferentes tipos de aplicações possuem técnicas diferentes a serem aplicadas, ou seja, testar uma aplicação web abrange tarefas diferentes comparados aos testes de sistemas para desktop. Cada tipo de aplicação possui particularidades especificas que devem ser respeitado no instante da realização do teste. A certificação em teste de software pode trazer vários benefícios, desde ajudar na busca por novas oportunidades de emprego, até em uma execução mais técnica de suas atividades dentro do ciclo de vida de um processo de teste. A escolha da certificação depende do que deseje ou pretende para o futuro de sua carreira. A partir daí, será possível definir o modelo de certificação mais interessante para atender sua expectativa, mas é necessário primeiramente ter a certificação CTFL para poder ascender para os níveis mais elevados. Este trabalho permitiu observar que o teste do software é muito importante para empresas, setores de desenvolvimento e profissionais de tecnologia da informação, por reduzirem o máximo número de defeitos que se encontra em seus produtos fabricados ou vendidos. O impacto que a inexistência do teste de software e a falta de profissionais qualificados podem causar enormes prejuízos como perdas de mercados ou danos na imagem dos produtos, pois afeta diretamente sua usabilidade, funcionalidade, segurança e confiabilidade nos sistemas. O teste também tem a função de ajudar e medir a qualidade do software/sistema através dos tipos de teste, pois à medida que os defeitos encontrados são corrigidos está sendo avaliados os requisitos funcionais e não funcionais do sistema fornecendo assim a confiança no mesmo. Sabe-se também que os testes bem planejados utilizando uma metodologia de desenvolvimento adequada, execuções do plano de teste bem elaborado e priorizado reduzem os riscos dos softwares falharem evitando assim o retrabalho e a insatisfação do cliente.
  12. 12. 12 É possível concluir através deste estudo que os testes agregam valor ao produto de software e que estes estão de forma direta ligada com os conceitos da qualidade, pois se a qualidade esta em atender as necessidades do solicitante/cliente, testar é contribuir para que o software desenvolvido esteja de acordo com as expectativas do mesmo. Este estudo demanda uma maior pesquisa em qualidade de software, onde se pode aprofundar nas questões de controle e garantia da qualidade de software. Sua abordagem se faz necessária para evitar que produtos defeituosos sejam entregues aos clientes tendo o objetivo de monitorar os processos e correção de defeitos com definições padronizadas. THE FUNDAMENTALS OF SOFTWARE TESTING AND ITS IMPORTANCE IN THE QUALITY OF PROJECTS This work describes the importance of software testing in organizations and their pleas. This approach is justified in the demonstration of basic foundations of software testing, for those who want to apply their background in software projects and the impacts that their lack can cause in business organizations. The purpose of this study is to understand the concepts of software testing and its fundamental process as also design, prioritize, create and execute test plans in accordance with approved plans, write incident reports in accordance with established techniques such as also demonstrate the importance of the completion of the test of software in organizations. This purpose will be achieved through a review of the literature, which will be searched journals (books, magazines, specialized web sites, among others), to understand the concepts and clarify what are the fundamentals of software testing. The study showed that the test of software is very important for companies, sectors of development and information technology professionals by reducing the maximum number of defects that if Is in its products manufactured or sold. The impact that the lack of software testing and the lack of skilled professionals can cause huge losses as losses of markets or damage the image of the products, because it directly affects its usability, functionality, security and reliability of the systems. Keywords: Software Testing. Quality Systems. Trusted programs.
  13. 13. 13 REFERÊNCIAS ANDRADE, A. P.; VIANA, P. Criação e Geração de Planos de Teste de Software. Online: IBM, ago. 2012. Disponível em: <http://www.ibm.com/developerworks/br/local/rational/criacao_geracao_planos_testes_software/ >. Acesso em: 05 out. 2014. ARAUJO, L. D. A Importância do Teste de Software para a qualidade do Projeto. Online: Centro Universitário UNA, [2013?]. Disponível em: <http://www.una.br/> BASE de conhecimento para certificação em teste. v. 2005, Online: BSTQB, 2005. Disponível em: <http://www.bstqb.org.br/?q=download>. Acesso em 05 de set. 2014. CONCEITOS: tipos de teste. Online: WThreeX, 2001. Disponível em: <http://www.wthreex.com/rup/portugues/process/workflow/test/co_tytst.htm>. Acesso em: 11 out. 2014. CRAIG, R. D.; JASKIEL, S. P. Systematic Software Testing. Boston: Artech House Publishers, 2002. FARACO, P. Certificações ISTQB. Online: Um, Dois, Três, Testando. - Insights sobre Testes de Software, 24 maio 2011. Disponível em: <http://testing.faraco.net/2011/05/24/certificacoes- istqb/>. Acesso em: 03 out. 2014. FILHO, A. M. D. S. Plano de Teste - Um Mapa Essencial para Teste de Software. Online: DEVMEDIA, 03 ago. 2009. Disponível em: <http://www.devmedia.com.br/plano-de-teste-um- mapa-essencial-para-teste-de-software/13824>. Acesso em: 05 out. 2014. GLOSSÁRIO standard de termos usados em Testes de software. Online: BSTQB, 2011. Disponível em: <http://www.pstqb.pt/ficheiros/PSTQB_Glossario_v2.1pt.pdf>. Acesso em: 03 ago. 2014. GUIA do candidato Brazilian software testing qualifications board. Online: BSTQB, 2013. Disponível em: <http://www.bstqb.org.br/uploads/docs/guiadocandidato.pdf>. Acesso em: 29 set. 2014.
  14. 14. 14 MEDEIROS, H. Fundamentos do Teste de Software para Certificação CTFL. Online: DEVMEDIA, 26 maio 2014. Disponível em: <http://www.devmedia.com.br/fundamentos-do- teste-de-software-para-certificacao-ctfl/30708>. Acesso em: 10 out. 2014. HAUG, M.; OLSEN, E.W.; CONSOLINI, L. Software quality approaches: testing, verification, and validation: software best practice 1. Berlin: Springer, 2001. PALMA, F. Testes De Software. Online: Teste de Software, 21 junho 2012. Disponível em: <http://testesdesoftware.blogspot.com.br/2009/09/tipos-de-teste.html>. Acesso em: 11 out. 2014. PIERRI, F. Planejamento de testes de sistema. Online: Matera Systems, 29 julho 2013. Disponível em: <http://www.matera.com/br/2013/07/29/planejamento-de-testes-de-sistema/>. Acesso em: 18 out. 2014. QUEZEDA, G. Execução e Relatório de Teste. Online: Falando em Teste e Qualidade de Software, 13 agosto 2009. Disponível em: <http://gustavoquezada.blogspot.com.br/2009/08/para- continuar-com-o-assunto-relatorio.html>. Acesso em: 18 out. 2014. RIOS, E.; MOREIRA, T. Teste de Software 3ª Edição revisada e ampliada. Rio de Janeiro: Alta Books, 2013. ROCHA, A. R. C.; MALDONADO, J. C.; WEBER, K. C. E. A. Qualidade de software – Teoria e prática. São Paulo: Prentice Hall, 2001. ROESSLER, R. G. Derivando casos de teste a partir de casos de uso. Online: DEVMEDIA, 10 de outubro 2011. Disponivel em: <http://www.devmedia.com.br/websys.5/webreader.asp?cat=48&artigo=3975&revista=esmagazi ne_41#a-3975>. Acesso em: 18 out. 2014. WEISS, K. Fundamentos em Teste de Software. Online: TI.EXAMES, 2011. Disponível em: <http://www.tiexames.com.br/curso_Teste_Software_CTFL.php>. Acesso em: 05 out 2014.

×