Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
1
CENTRO UNIVERSITÁRIO DO CERRADO PATROCÍNIO UNICERP
Graduação em Sistemas de Informação
ALTAIR VICENTE FERREIRA JÚNIOR
O USO DA FERRAMENTA KATALON STUDIO EM UM TESTE DE
SOFTWARE
PATROCÍNIO/MG
2018
2
ALTAIR VICENTE FERREIRA JÚNIOR
O USO DA FERRAMENTA KATALON STUDIO EM UM TESTE DE
SOFTWARE
Trabalho de Conclusão de Curso
apresentado como exigência parcial para
obtenção do grau de bacharel em Sistemas
de Informação, pelo Centro Universitário
do Cerrado Patrocínio - UNICERP.
Orientador: Prof. Esp. Breno Cristovão Rocha.
PATROCÍNIO/MG
2018
3
4
AGRADECIMENTOS
A Deus por estar sempre ao meu lado em todos os momentos da minha vida me
iluminando, abençoando e me capacitando para todas as situações que possam aparecer;
Aos meus pais, que não mediram esforços para me ajudar em todas etapas da minha
vida;
A minha namorada Renata, que sempre esteve me apoiando em todos os momentos;
Aos meus amigos e futuros companheiros de profissão que fiz ao longo do curso;
Ao meu orientador Breno Cristovão Rocha que com sua saberia não mediu esforços
para me auxiliar a concluir este trabalho;
A todos os professores que com sabedoria me passaram seu conhecimento e me
ajudaram em minha formação profissional;
À instituição UNICERP, pelo auxilio durante toda essa jornada;
A todos que contribuíram diretamente ou indiretamente para que esse trabalho pudesse
ser concluído.
5
RESUMO
Introdução: Em um cenário onde empresas e clientes têm altos valores investidos em um
software, obter a qualidade desejada tem se tornado cada vez mais difícil devido os softwares
estarem cada vez com mais funcionalidades e complexos. Por isso muitos erros podem ser
descobertos e impactar na qualidade do software. É por isso que a automação de teste de
software se tornou indispensável dentro de uma organização que se propõe a desenvolver
software com qualidade. Objetivo: Apresentar o uso da ferramenta Katalon Studio em um
uso e estudo de teste de software. Metodologia: Para realização deste trabalho, foram
realizadas pesquisas bibliográficas por meio de sites e artigos pertinentes ao tema.
Conclusão: Com tantos problemas que podem surgir e precisam ser resolvidos durante o
desenvolvimento de um software, ao termino deste trabalho pode se mostrar a importância
dos testes para a automação de software realizada como ferramenta de contribuição para a
obtenção da qualidade final esperada do produto.
Palavras-Chave: Automação, qualidade de software, software.
6
Lista de Siglas e Abreviações
API – Application Programming Interface
WEB – World Wide Web
7
Sumário
1. INTRODUÇÃO .................................................................................... Error! Bookmark not defined.
2. OBJETIVOS .................................................................................................................................... 10
2.1. Geral: ........................................................................................................................................ 10
2.2. Específicos: ............................................................................................................................... 10
3. DESENVOLVIMENTO ................................................................................................................. 11
3.1 INTRODUÇÃO ......................................................................................................................... 12
3.2 MATERIAL E MÉTODOS ..................................................................................................... 13
3.3 RESULTADOS E DISCUSSÃO .............................................................................................. 13
3.3.1 Engenharia de Software e Projetos ...................................................................................... 13
3.3.2. Desenvolvimento Ágil de Software .................................................................................... 14
3.3.3 Métodos para controle da Qualidade ................................................................................... 14
3.3.4 Testes ................................................................................................................................... 15
3.3.4.1 Teste de Unidade .............................................................................................................. 15
3.3.4.2 Teste de Integração ........................................................................................................... 16
3.3.4.3 Teste de Validação............................................................................................................ 16
3.3.4.4 Teste de Sistema ............................................................................................................... 17
3.3.4.5 Ferramenta Katalon .......................................................................................................... 18
3.4 CONSIDERAÇÕES FINAIS ................................................................................................... 20
3.5 REFERÊNCIAS ........................................................................................................................ 21
4 CONCLUSÃO .................................................................................................................................. 22
5 REFERÊNCIAS ............................................................................................................................... 23
8
1. INTRODUÇÃO
O processo de desenvolvimento de um software contém várias atividades como
levantamento de requisitos, análise de requisitos, escopo, desenvolvimento, teste e
implementação.
Os projetos de desenvolvimento de softwares podem não alcançar resultados
satisfatórios quando se trata do ciclo de vida do software e a qualidade do sistema. Um dos
grandes desafios vem sendo conseguir cumprir prazos e custos estabelecidos e alcançar a
qualidade desejada.
Para Roger Pressman, Qualidade de software é a conformidade com requisitos
funcionais e de desempenho explicitamente declarados, padrões de desenvolvimento
explicitamente documentados e características implícitas, que são esperadas em todo
software desenvolvido profissionalmente (PRESSMAN, 2016).
Ao falar em qualidade de software, o cenário ideal de uma empresa que desenvolve
soluções é não focar todos os seus esforços e mão de obra qualificada em ajustes funcionais
após a implantação de um sistema em ambiente de produção. Grande parte dos esforços para
se garantir uma solução de qualidade para os futuros usuários é realizada durante a fase de
planejamento, desenvolvimento e testes (GANDARA, 2012 p. 11-12).
Em busca de conseguir entregas de software com maior qualidade, as empresas
consumidoras de software e usuários buscam soluções que proporcionam entregas de software
especializadas no acompanhamento, elaboração, desenvolvimento, teste e homologação de
sistemas. Para evitar falhas, é necessário desde o início do projeto, proceder com seu
planejamento, pois grande parte do desenvolvimento com qualidade de um sistema está
associado aos testes, acertos, validações e homologações1 para entrar em produção
(GANDARA, 2012, p.11-12).
A etapa de teste de software é destinada a validar os requisitos do projeto. Na fase dos
procedimentos dos testes do software, casos de testes de software são executados usando
dados fictícios. Desse modo, os resultados são apurados e verificados à procura de erros,
bugs, anomalias ou informações não esperadas sobre os atributos não funcionais do sistema.
(SOMMERVILE, 2011, p.144).
Os testes em software em muitos casos são testados isoladamente à medida que vão
sendo concluídos, a fim de confirmar que estão corretos. Posteriormente, grupos de programas
1 GANDARA, Fernando. Qualidade e Teste em Software. Joinville: Clube dos Autores, 2012.
9
são testados num "teste de sistema" onde é feito um teste de integração para testar as
interfaces e assegurar que os módulos estão se comunicando da maneira esperada. Em
seguida, o software é explorado como forma de detectar suas limitações e medir suas
potencialidades. Em um terceiro nível, sistemas completos são, por fim, submetidos a um
"teste de aceitação" para verificar a possibilidade de implantação e uso, geralmente feita pelo
cliente ou usuário final.
O trabalho propõe a apresentar um levantamento bibliográfico apoiado em artigos
científicos de modo a alcançar uma visão comum no gerenciamento e automação de testes no
âmbito de desenvolvimento de software. Apresentando a ferramenta Katalon Studio na
automação de software e a importância da realização dos testes funcionais de uma aplicação.
10
2. OBJETIVOS
2.1. Geral:
Apresentar a ferramenta de testes de automação para software.
2.2. Específicos:
• Apresentar a revisão de literatura baseada em engenharia de softwares baseada em
automação de software.
• Expor a ferramenta Katalon Studio e seus recursos além de apresentar exemplos e
casos de teste.
• Apresentar os testes que foram executados através da ferramenta Katalon Studio.
11
3. DESENVOLVIMENTO
O USO DE FERRAMENTAS DE AUTOMAÇÃO DE TESTES EM SOFTWARE
ALTAIR VICENTE FERREIRA JÚNIOR2
ESP. BRENO CRISTOVÃO ROCHA3
RESUMO
Introdução: Em um cenário onde empresas e clientes têm altos valores investidos em um
software, obter a qualidade desejada tem se tornado cada vez mais difícil devido os softwares
estarem cada vez com mais funcionalidades e complexos. Por isso muitos erros podem ser
descobertos e impactar na qualidade do software. É por isso que a automação de teste de
software se tornou indispensável dentro de uma organização que se propõe a desenvolver
software com qualidade. Objetivo: Apresentar o uso da ferramenta Katalon Studio em um
uso e estudo de teste de software. Metodologia: Para realização deste trabalho, foram
realizadas pesquisas bibliográficas por meio de sites e artigos pertinentes ao tema.
Conclusão: Com tantos problemas que podem surgir e precisam ser resolvidos durante o
desenvolvimento de um software, ao termino deste trabalho pode se mostrar a importância
dos testes para a automação de software realizada como ferramenta de contribuição para a
obtenção da qualidade final esperada do produto.
Palavras-Chave: Automação, qualidade de software, software.
ABSTRACT
Introduction: In a scenario where companies and clients have high values invested in a
software, obtaining the desired quality has become increasingly difficult due to the fact that
the software is increasingly more complex and complex. That is why many errors can be
discovered and impact the quality of the software. That is why software testing automation
has become indispensable within an organization that proposes to develop software with
quality. Objective: To present the use of the Katalon Studio tool in a software test.
Methodology: For the accomplishment of this work, bibliographical researches were carried
out through researches in websites and articles pertinent to the theme. Conclusion: With so
many problems that can arise and need to be solved during the development of a software, at
the end of this work can show the importance of the tests for the software automation
performed as a contribution tool to obtain the expected final quality of the product.
Keywords: automation, software quality, software.
2 Graduando do Curso de Sistema de Informação do UNICERP 3 Professor orientador. Especialista e docente do Curso de Sistemas de Informação do UNICERP
12
3.1 INTRODUÇÃO
Os testes de software são vistos como uma tarefa contínua de avaliar e qualificar a
qualidade do trabalho desenvolvido em cada etapa do processo de desenvolvimento de
sistemas, desde a análise de requisitos até a fase que compreende a manutenção do software.
Quase 50% do tempo e mais 50% do custo total de um sistema são gastos no teste de
programas ou sistemas em desenvolvimento.
Segundo Myers (2004), a atividade de teste é um mecanismo que tem como objetivo
encontrar falhas no software. Após a fase de testes e eles terem cumprido seu objetivo, é
possível então saber onde estão os erros e desta forma corrigi-los, consequente o produto terá
melhorias e aprimoramento final, para que possa atender de forma plena o desejo do cliente
que o requisitou.
O autor Myers ainda informa, que, contudo, na realização dos testes é inviável testar
todas as possíveis entradas e analisar se as mesmas estão de acordo com o que se deseja, pois
com o grande número de dados a serem controlados o custo poderá aumentar o
desenvolvimento do software. Por isso, segundo Pressman e Maxim (2016), para se obter pelo
menos a maioria de defeitos de determinado programa, define-se técnicas e critérios que
auxiliem na criação de subconjunto de entradas potencializadas.
Para o controle de qualquer projeto de desenvolvimento de software, os testes são
ferramentas eficientes e essenciais para o controle de boa qualidade. É uma das formas de
verificar se o sistema em desenvolvimento está sendo feito de maneira correta. O teste de
software envolve: planejamento de testes, projeto de casos de testes, execução e avaliação dos
resultados obtidos. Segundo Hetzel (1987), teste é qualquer atividade que vise avaliar uma
característica ou recurso de um programa ou sistema.
Para um software ter qualidade, não basta estar livre de defeitos, pois é uma tarefa
praticamente impossível, a tendência de sistemas de software é melhorar gradativamente, o
que chamamos de melhoria contínua, e a integração com as demais funcionalidades acaba
acarretando novos problemas, e a facilidade de resolução de problemas, assim como a sua
respectiva solução e previsão cabe à Engenharia de Software, assim como a qualidade do
mesmo, principalmente em automação.
Para automatizar os testes se tem como base o uso de casos de teste.
Segundo Lages (2010):
Caso de teste é a representação de uma instância de teste para aquela funcionalidade
que está sendo avaliada, de acordo com as entradas e o resultado esperado é
13
percorrido um determinado caminho no algoritmo para que se avalie aquela
situação. Logo, existem duas categorias de ferramentas, uma que gera conjuntos de
casos de teste e a outra que os executam e verificam o resultado, ambos de modo
automático (LAGES, 2010).
Empresas que trabalham com desenvolvimento de software utilizam as ferramentas
para automatizar o teste por muitas razões, seja para aumentar a velocidade, diminuir tempo
de testes repetitivos (WIKLUND et al., 2014). De acordo com a pesquisa feita por Rafi et al.
(2012), a prática de automatizar o teste de software apresentam benefícios como melhoria da
qualidade do produto, cobertura do teste, redução do tempo de teste, aumento na confiança,
reutilização de testes, menor esforço humano, redução dos custos e aumento na detecção de
falhas.
3.2 MATERIAL E MÉTODOS
Estre trabalho foi desenvolvido através de pesquisas bibliográficas, artigos acadêmicos
e livros voltados para área tecnológica englobando assuntos de engenharia de software,
qualidade e automatização de testes de software. Foram analisados primeiramente os quesitos
que fazem parte de todo o processo de desenvolvimento de um software e em seguida o uso
de uma ferramenta de automação de testes de software. O trabalho abordou o uso da
ferramenta de teste na prática, contendo testes em uma aplicação web para demonstrar seu
auxilio em todo o processo de desenvolvimento com o intuito de alçar a qualidade que foi
proposta.
3.3 RESULTADOS E DISCUSSÃO
3.3.1 Engenharia de Software e Projetos
Para Araújo Spínola (2007) a Engenharia de Software é a aplicabilidade de
abordagens sistemáticas, disciplinadas e quantificáveis no desenvolvimento e manutenção de
software. Com isso, se atenta em como atingir as diversas atividades envolvidas no processo
de desenvolvimento de software de forma que se tenha um produto preparado com maior
qualidade e menor custo.
14
Segundo Paulino Filho (2007) a Engenharia de Software aponta para a criação de
produtos de software que acatem as necessidades de pessoas e instituições e, portanto, tenham
valor econômico. Para isso, usa conhecimentos científicos, técnicos e gerenciais, tanto
teóricos quanto empíricos. A engenharia de software atinge seus objetivos de produzi-los com
alta qualidade e produtividade quanto é praticada por profissionais treinados e bem
informados, utilizando tecnologias adequadas, dentro de processos que tirem proveito tanto da
criatividade quanto da racionalização do trabalho.
3.3.2. Desenvolvimento Ágil de Software
O desenvolvimento ágil é bastante popular na indústria do software. Valores como
rapidez, flexibilidade e a capacidade de resposta são as principais razões desta popularidade.
Estes valores são fundamentais e definem a cultura da organização. Em contramão aos
métodos de desenvolvimento tradicionais, onde o foco é nos processos e ferramentas, esta
abordagem dá especial ênfase às equipes, ao software funcional, à colaboração com o cliente
e à resposta às mudanças (MADI, 2011).
Os objetivos dos princípios do Manifesto Ágil centram-se em promover uma correta
percepção acerca do que são os métodos ágeis e guiar as equipes de desenvolvimento do
projeto, no sentido de perceberem se realmente estão a usar os métodos ágeis (FERNANDES,
2010). Este manifesto e todos os valores e princípios inerentes, representam a filosofia dos
métodos ágeis que idealmente deve estar presente em todas as práticas propostas pelos
métodos ágeis.
3.3.3 Métodos para controle da Qualidade
No desenvolvimento de um software a busca por qualidade se tornou fundamental,
pois os sistemas estão com várias funcionalidades integradas e devido a esse fator a qualidade
final pode ser comprometida (BARTIÉ, 2002).
Alexandre Bartié em seu livro enfatiza que "Qualidade de software é um processo
sistemático que focaliza todas as etapas e artefatos produzidos com o objetivo de garantir a
conformidade de processos e produtos, prevenindo e eliminando defeitos". (BARTIÉ, 2002).
15
Para que a garantia da qualidade seja comprida existem algumas atividades voltadas
para esse objetivo que serão descritas a seguir:
• Revisões e Auditorias – A atividade de revisão tem o intuito de apontar erros e a
atividade de auditoria é garantir que a qualidade que foi proposta esteja sendo seguida.
• Testes – A finalidade dos testes é direcionar determinadas atividades com o intuito de
descobrir erros para serem eliminados e não danificar a qualidade.
• Coleta e análise de erros/defeitos – Essa atividade coleta e examina erros e defeitos e
direciona a engenharia de software qual atividade deve ser realizada para sua
eliminação.
• Gerência de Mudanças – Todo projeto pode acontecer mudanças ao logo do
desenvolvimento, essa atividade de gerência de mudança visa verificar os impactos
que a mudança pode causar no projeto e direcionar a melhor opção para que não afete
a qualidade.
• Gestão de Riscos – Essa atividade analisa todo o desenvolvimento e através dessa
analise procura a melhor solução para eliminar tais riscos.
3.3.4 Testes
No cenário atual de desenvolvimento de software existe uma grande preocupação
quando se fala em desenvolver um produto com qualidade que não contém erros e que venha
atender as necessidades solicitadas pelo cliente. Os testes se tornaram um fator indispensável
quando se fala em desenvolvimento, pois tem como objetivo encontrar o maior número de
erros possíveis com mais facilidade para que a qualidade desejada não seja comprometida. O
teste de software pode ser visto como um fragmento no processo de qualidade.
3.3.4.1 Teste de Unidade
O teste de unidade concentra-se em cada unidade do software, conforme
implementado no programa-fonte (classe ou componente). Este teste tem como objetivo
descobrir a menor unidade do projeto, procurando falhas ocasionadas por defeitos de lógica,
seu principal foco são os métodos dos objetos e até mesmo os pequenos trechos de código do
sistema (MARTINS, 2007, p.15).
16
Na visão de Pressman e Maxim (2016, p.474) o teste de unidade normalmente é
considerado um auxiliar para etapa de codificação. O projeto dos testes de unidade pode
ocorrer antes de a codificação começar ou depois que o código-fonte tiver sido gerado. Um
exame das informações de projeto fornece instruções para estabelecer casos de testes que
provavelmente mostrarão os erros.
3.3.4.2 Teste de Integração
Na etapa de teste de integração, o propósito é encontrar falhas provenientes da
conexão interna dos componentes de um sistema. Geralmente, a maioria dos erros
encontrados ocorre em razão de problemas na transferência de dados. Por exemplo, o
componente A pode estar esperando retorno de um valor X ao executar um método do
componente B; porém, esse retorna um valor Y, gerando um erro.
Não faz parte do escopo desta etapa de teste o tratamento de interfaces com outros
sistemas. Essas verificações são atentadas na fase de teste do sistema, apesar que, ao critério
do gerente do projeto, essas interfaces podem ser testadas mesmo antes do sistema estar
plenamente construído. Para Reisswitz (2009, p.53), é relevante verificar se o sistema se
comporta conforme especificação do design arquitetural. No entendimento de Wazlawick
(2011, p.309):
O objetivo do teste de integração é verificar se os objetos se comunicam
adequadamente. Isso pode ser feito de forma modular e sistemática. Estando os
métodos básicos resolvidos, cabe verificar se os métodos delegados e operações de
sistema funcionam conforme o esperado.
3.3.4.3 Teste de Validação
Deve-se verificar se as expectativas do cliente ao iniciar os testes de validação,
verificando as especificações dos requisitos de software, elaboradas durante a etapa de
análise, estão sendo atendidas. Segundo Kechi (2012, p.37), esse teste é a garantia final de
que o software realmente satisfaz a todos os requisitos funcionais e comportamentais
desejados pelos agentes humanos envolvidos no projeto. Para Pezzè e Young (2009, p. 40):
As atividades de validação procuram medir o quanto o sistema realmente atinge seus
propósitos. As atividades de validação referem-se principalmente a especificação
geral do sistema e ao código final. Com respeito à especificação geral do sistema, a
validação busca discrepâncias entre as necessidades reais e a especificação do
17
sistema tal como elaborada pela análise a fim de garantir que a especificação é um
guia adequado para construir um produto que atingirá os objetivos.
3.3.4.4 Teste de Sistema
No teste do sistema a finalidade principal é executar o sistema com relação ao ponto
de vista do seu usuário final, fazendo uma varredura em busca de falhas associadas aos
objetivos originais. Para Reisswitz (2009, p.53), os testes de sistema são executados em
condições similares de ambiente, interfaces sistêmicas e massas de dados àquelas que um
usuário utilizará no seu dia-dia de manipulação do sistema. Na visão de Sommerville (2011,
p.153), esse teste examina se os componentes são compatíveis, se interagem corretamente e se
transferem os dados certos na hora certa.
Reisswitz (2009) apresenta duas diferenças, a primeira é que durante o teste de
sistema, os componentes reusáveis são desenvolvidos separadamente e os sistemas de
prateleira podem ser integrados com módulos recém-desenvolvidos. Assim, o sistema
completo é testado. Já a segunda diferença é que os componentes desenvolvidos por
diferentes grupos ou pessoas da equipe podem ser integrados.
Na verdade, o teste de sistema é um processo coletivo, não individual. Em algumas
empresas, o teste de sistema pode envolver uma equipe independente, sem participação de
projetistas e programadores. Quando você integra partes para criar um sistema, um novo
comportamento é obtido. Portanto, esse teste deve focar em verificar interações entre
componentes e objetos que formam um sistema.
Conforme Figura 1, o lado esquerdo destaca o detalhamento e transformação de
requisitos em código ao passo que o lado direito indica diferentes abordagens de testes,
verificação e validação adequadas para cada fluxo de desenvolvimento.
18
Figura 1 - Testes no ciclo de vida de software, fluxo de verificação e validação.
Fonte: Retirado de Kechi (2012, p.36).
A qualidade de software está ligada em entregar ao cliente o produto final que
satisfaça suas expectativas, levando em consideração aquilo que foi acordado inicialmente por
meio dos requisitos do projeto (KECHI, 2012, p.140).
3.3.4.5 Ferramenta Katalon
Automação de testes está relacionada às atividades e trabalhos que possam automizar
as atividades de um processo no teste de software, por meio de ferramentas próprias podem
controlar e executar comparações dos resultados previstos (LAM, 2017).
O Katalon Studio é uma solução de automação de testes que utiliza o mecanismo
principal do Selenium. Os principais recursos dessa ferramenta é, como usuários de destino,
implantação, gerenciamento de teste e suporte à linguagem de script, desempenho,
usabilidade e integração com outras ferramentas (LAM, 2017).
Segundo Lam (2017) os usuários do Katalon Studio não precisam ser conhecedores e
especialistas em informática, podem ser os testadores com conhecimento limitado. Esta
ferramenta esconde todas as complexidades técnicas e fornece interface amigável com o
modo manual, com isso o usuário pode arrastar e soltar, selecionar palavras-chave e testar
objetos para formar etapas de teste.
O Katalon Studio oferece uma rica interface gráfica com menus, visualizações em
árvore, tabelas, etc. para gerenciar casos de teste, objetos e arquivos de dados. Seu criador de
scripts com realce de sintaxe total, sugestão de código, depuração é ideal para os testadores
que querem apenas arrastar ou ter habilidades de programação limitadas:
19
Figura 2 - Modo manual do Katalon Studio
Fonte: Lam, 2017
A principal maneira e melhor de ajudar os usuários a se adaptarem rapidamente aos
testes de automação é por meio da Gravação de Testes. Ela ajuda um testador de automação a
executar duas tarefas primárias: capturar objetos (durante a gravação) e gerar etapas de teste
com ações ou palavras-chave apropriadas, economizando pelo menos 50 a 60% do tempo de
composição dos casos de teste.
20
Figura 3 – Modo de Gravação de Testes
Fonte: Lam, 2017
Assim sendo, o Katalon Studio é uma plataforma de testes automatizada que oferece
um conjunto abrangente de recursos para implementar soluções completas de testes
automatizados para Web, API (Application Programming Interface) e dispositivos
móveis. Construído sobre as bases e estruturas de código aberto Selenium e Appium, o
Katalon Studio da a oportunidade de que todos iniciem de foram rápida a automação de testes,
minimizando esforços e conhecimento para interagir com as estruturas necessárias da
ferramenta (LAM, 2017).
3.4 CONSIDERAÇÕES FINAIS
Como visto no decorrer deste trabalho, é cada vez mais importante que as empresas
que desenvolvem software criem ambientes favoráveis para desenvolver sistemas com
qualidade. E realizar entregas com qualidade requer a utilização técnicas de gerenciamento e
automação de testes para que o produto final seja entregue com o máximo de concordância e
credibilidade. A implantação do teste em um projeto de software ajuda a identificar e obter
uma visão completa dos erros a serem analisados e corrigidos ao longo de todo o processo de
21
seu desenvolvimento. Para isto, devem-se definir etapas de gerenciamento e automação dos
testes que contribuem para redução do tempo e custo gastos com testes.
É possível, e se faz necessário que em projetos futuros, realizam-se todas estas etapas
de gerenciamento e automação, a fim de colocar em prática cada abordagem para obter
conclusões concretas de quais testes são mais adequados a depender do domínio de estudo
junto a empresas.
3.5 REFERÊNCIAS
ARAÚJO, M.; SPÍNOLA, E. Editorial Qualidade de Software. Engenharia de software
magazine, ano 1, ed. 1, 2007. Edição especial. p. 3. Disponível em:
<http://www.devmedia.com.br/articles/viewcomp.asp?comp=8028> Acesso em: 20 set.2018.
BARTIÉ, Alexandre. Garantia da qualidade de software: adquirindo maturidade
organizacional. Rio de Janeiro: Elsevier, 2002
FERNANDES, J. M e M. Almeida, “Classification and Comparison of Agile Methods,”
2010 Seventh Int. Conf. Qual. Inf. Commun. Technol., pp. 391–396, Sep. 2010.
GANDARA, Fernando. Qualidade e Teste em Software. Joinville: Clube dos Autores, 2012.
KECHI, Hirama. Engenharia de Software. Rio de Janeiro: Elsevier, 2012.
LAGES, Scaldaferri Daniel. Automação dos Testes: um lobo na pele de cordeiro?.
Engenharia de Software Magazine, n. 29, p. 20-25, 2010.
LAM, Vu. Simplifique Testes de API, Web, Mobile Automation : Livre. Robusto.
Plataforma cruzada. 2017. Disponível em: <https://www.katalon.com/>. Acesso em: 08 out.
2018.
MADI, T. Z. Dahalin, and F. Baharom, “Content analysis on agile values: A perception
from software practitioners,” 2011 Malaysian Conf. Softw. Eng., pp. 423–428.
MARTIMIANO, L. A. F., Integração da ferramenta de teste de software Poke-Tool em
PCTE. 1995. Trabalho de Graduação, DIN/UEM, Maringá.
MARTINS, José Carlos Cordeiro. Técnicas para Gerenciamento de Projetos de Software.
Rio de Janeiro: Brasport, 2007.
MYERS, G. J. The Art of Software Testing. 2. ed. Hoboken: John WileyeSons Inc., 2004.
ISBN 0-471-46912-2. Citado nas páginas 12, 18 e 19.
PEZZÈ, Mauro; YOUNG, Michal. Teste e Análise de Software. Porto Alegre: Bookman,
2009.
22
PRESSMAN, Roger S. Engenharia de Software: uma abordagem profissional. 2016. 8.
ed.
PRESSMAN, Roger; MAXIM, Bruce. Engenharia de Software: . 8ª Ed., São Paulo:
McGraw-Hill, 2016.
RAFI, D. M. et al. Benefits and limitations of automated software testing: Systematic
literature review and practitioner survey. In: Automation of Software Test (AST), 2012
7th International Workshop on. [S.l.: s.n.], 2012. p. 36–42. Citado nas páginas 15, 21 e 22
REISSWITZ, Flavia. Análise e de Sistemas V. 4. Joinville: Clube de Autores, 2009.
SOMMERVILLE, Ian. Engenharia de Software. 9ª Ed., São Paulo: Addison Wesley, 2011.
WAZLAWICK, Raul Sidnei. Análise e Projeto de Sistemas da Informação. 2ª Ed., Rio de
Janeiro: Elsivier, 2011.
WIKLUND, K. et al. Impediments for automated testing – an empirical analysis of a user
support discussion board. In: 2014 IEEE Seventh International Conference on Software
Testing, Verification and Validation. [S.l.: s.n.], 2014. p. 113–122. ISSN 2159-4848. Citado
na página 21
4 CONCLUSÃO
Como visto no decorrer deste trabalho, é cada vez mais importante que as empresas
que desenvolvem software criem ambientes favoráveis para desenvolver sistemas com
qualidade. E realizar entregas com qualidade requer a utilização técnicas de gerenciamento e
automação de testes para que o produto final seja entregue com o máximo de concordância e
credibilidade. A implantação do teste em um projeto de software ajuda a identificar e obter
uma visão completa dos erros a serem analisados e corrigidos ao longo de todo o processo de
seu desenvolvimento. Para isto, devem-se definir etapas de gerenciamento e automação dos
testes que contribuem para redução do tempo e custo gastos com testes.
É possível, e se faz necessário que em projetos futuros, realizam-se todas estas etapas
de gerenciamento e automação, a fim de colocar em prática cada abordagem para obter
conclusões concretas de quais testes são mais adequados a depender do domínio de estudo
junto a empresas.
23
5 REFERÊNCIAS
ARAÚJO, M.; SPÍNOLA, E. Editorial Qualidade de Software. Engenharia de software
magazine, ano 1, ed. 1, 2007. Edição especial. p. 3. Disponível em:
<http://www.devmedia.com.br/articles/viewcomp.asp?comp=8028> Acesso em: 20 set.2018.
BARTIÉ, Alexandre. Garantia da qualidade de software: adquirindo maturidade
organizacional. Rio de Janeiro: Elsevier, 2002.
FERNANDES, J. M e M. Almeida, “Classification and Comparison of Agile Methods,”
2010 Seventh Int. Conf. Qual. Inf. Commun. Technol., pp. 391–396, Sep. 2010.
GANDARA, Fernando. Qualidade e Teste em Software. Joinville: Clube dos Autores, 2012.
KECHI, Hirama. Engenharia de Software. Rio de Janeiro: Elsevier, 2012.
LAGES, Scaldaferri Daniel. Automação dos Testes: um lobo na pele de cordeiro?.
Engenharia de Software Magazine, n. 29, p. 20-25, 2010.
MADI, T. Z. Dahalin, and F. Baharom, “Content analysis on agile values: A perception
from software practitioners,” 2011 Malaysian Conf. Softw. Eng., pp. 423–428.
MARTIMIANO, L. A. F., Integração da ferramenta de teste de software Poke-Tool em
PCTE. 1995. Trabalho de Graduação, DIN/UEM, Maringá.
MARTINS, José Carlos Cordeiro. Técnicas para Gerenciamento de Projetos de Software.
Rio de Janeiro: Brasport, 2007.
MYERS, G. J. The Art of Software Testing. 2. ed. Hoboken: John WileyeSons Inc., 2004.
ISBN 0-471-46912-2. Citado nas páginas 12, 18 e 19.
PEZZÈ, Mauro; YOUNG, Michal. Teste e Análise de Software. Porto Alegre: Bookman,
2009.
PRESSMAN, Roger S. Engenharia de Software: uma abordagem profissional. 2016. 8.
ed.
PRESSMAN, Roger; MAXIM, Bruce. Engenharia de Software. 8ª Ed., São Paulo: McGraw-
Hill, 2016.
RAFI, D. M. et al. Benefits and limitations of automated software testing: Systematic
literature review and practitioner survey. In: Automation of Software Test (AST), 2012
7th International Workshop on. [S.l.: s.n.], 2012. p. 36–42. Citado nas páginas 15, 21 e 22
REISSWITZ, Flavia. Análise e de Sistemas V. 4. Joinville: Clube de Autores, 2009.
SOMMERVILLE, Ian. Engenharia de Software. 9ª Ed., São Paulo: Addison Wesley, 2011.
24
WAZLAWICK, Raul Sidnei. Análise e Projeto de Sistemas da Informação. 2ª Ed., Rio de
Janeiro: Elsivier, 2011.
WIKLUND, K. et al. Impediments for automated testing – an empirical analysis of a user
support discussion board. In: 2014 IEEE Seventh International Conference on Software
Testing, Verification and Validation. [S.l.: s.n.], 2014. p. 113–122. ISSN 2159-4848. Citado
na página 21