Baixe o app para aproveitar ainda mais
Prévia do material em texto
TESTE DE SOFTWARE I 1 📝 TESTE DE SOFTWARE I ID 6 Status Done Dt. Conclusão Carga Horária 50 Nota 10 Introdução aos testes de software Apresentação No desenvolvimento de software, a última etapa é a que contempla os testes e ela é de suma importância. Por meio dessa etapa ocorre a detecção e a solução de erros no software. Dentre as fases dos testes são executadas várias atividades que têm a finalidade de buscar no software qualquer tipo de erro ou falha na codificação que possa interromper ou fazer com que seu funcionamento seja prejudicado. Nesta Unidade de Aprendizagem, você estudará o conceito, as causas e os defeitos em software, assim como o papel do analista de testes e saberá verificar e @10/08/2022 TESTE DE SOFTWARE I 2 como obter a qualidade em um sistema desenvolvido. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Apresentar as definições de teste de software. Apontar as causas e os defeitos em software e o papel do analista de teste de software. Explicar o que é qualidade de software e o papel do teste de software na obtenção da qualidade. https://youtu.be/0gad1Cb5DM0 https://s3-us-west-2.amazonaws.com/secure.notion-static.com/070cea1f-af6 1-44cf-a21a-beb9fd0adf75/Introduo_aos_testes_de_software.pdf 📈 Infográfico 🎯 Desafio 1. Supondo que um novo software voltado para redes sociais para um público específico esteja sendo desenvolvido, após o término do desenvolvimento das funcionalidades, e depois de ocorrer os testes funcionais e estruturais, o que mais seria pertinente realizar? B. Revisões técnicas eficientes, especificações funcionais e não funcionais corretas e elaboração de um plano de teste. Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez que seria interessante poder seguir um roteiro e saber todas as especificações para poder realizar os demais testes. https://youtu.be/0gad1Cb5DM0 https://www.notion.so/signed/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F070cea1f-af61-44cf-a21a-beb9fd0adf75%2FIntroduo_aos_testes_de_software.pdf?table=block&id=3337217e-08dd-4bb7-adfc-d92ed2633791&spaceId=fcc5786c-573b-4391-994d-f958847592c7&userId=dfbbbfa9-7afa-4f6b-85b4-3e86e745823b&cache=v2 https://www.notion.so/Infogr-fico-84cc74c02d0f4eb98713d42b9b4b8961 https://www.notion.so/Desafio-3e47ab09c57a40e58cf22eced1134e03 TESTE DE SOFTWARE I 3 2. O teste do software tem como objetivo fornecer informações sobre a qualidade do software em relação ao contexto no qual ele deverá funcionar. Dentre os testes de software, pode-se incluir: I. Caixa-preta. II. Caixa-cinza. III. Caixa-branca. IV. Teste de performance. V. Teste de integração. E. Alternativas I, II, III, IV e V. Como trata-se de um conjunto de atividades que devem ser planejadas e executadas sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam de acordo com as estratégias elaboradas no plano de testes. 3. Técnicas de verificação e validação são de grande importância para identificar se um software tem defeitos e se está de acordo com o especificado. O que diferencia validação e verificação em um teste de software? C. Na validação ocorre uma verificação dinâmica e na verificação ela é realizada de uma forma estática. Na verificação, é assegurado que o software seja consistente, correto e completo, em cada fase e entre fases, garantindo que o software implementado seja correto para a função específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi criado e pode ser rastreado segundo os requisitos solicitados pelo cliente. 4. Em testes de software, há os fatores ISO de qualidade que definem parâmetros, cujo objetivo é padronizar a avaliação da qualidade de software. A partir disso, é correto afirmar que os fatores: D. Não levam, necessariamente, à medição direta, porém fornecem base para medidas indiretas e uma lista de verificação que norteia a avaliação de TESTE DE SOFTWARE I 4 qualidade. Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre: funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade, produtividade, segurança e satisfação. 5. Dentre as técnicas empregadas no projeto de interfaces de sistemas, uma delas é a condução de testes de usabilidade, em que os resultados fornecem importantes indicadores para melhorar a qualidade da interface. Em que consistem os testes de usabilidade? B. Mostrar o sistema para um usuário, solicitar que ele realize algum tipo de tarefa, observando as suas reações à interface, como, por exemplo, erros cometidos, dificuldades e eficiência no cumprimento da tarefa. A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a questão e isso gera a satisfação do usuário. Tipos de teste Apresentação Os projetos de desenvolvimento de software são passíveis de erros, falhas e defeitos, mesmo que tenham sido elaborados de maneira cuidadosa. Em vista disso, as atividades de testes se tornam fundamentais durante todo o ciclo de vida do projeto, para indicar se os requisitos do software estão sendo respeitados e também se as expectativas e as necessidades dos clientes estão sendo levadas em conta. Para cada fase do projeto existem diferentes tipos de testes que podem ser realizados, mas o importante é testar, para garantir a entrega de um produto de qualidade aos clientes. Nesta Unidade de Aprendizagem, você vai estudar os fundamentos dos testes de software, a verificação, a validação estática e a dinâmica, além das categorias e os tipos de teste de software e suas etapas. Bons estudos. TESTE DE SOFTWARE I 5 Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Explicar os fundamentos dos testes de software. Descrever a verificação, a validação estática, a validação dinâmica e as categorias de teste de software. Diferenciar os tipos de teste de software e suas etapas (o que testar, como testar e quando testar). https://youtu.be/dsy4zaEi59s https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5401b184-83 6f-4210-95f2-6c0aafa3ad81/Tipos_de_Teste.pdf 🎯 Desafio 📈 Infográfico 1. As atividades de testes devem fazer parte de todo projeto de desenvolvimento de software, do início até a entrega do produto final ao usuário. Os testes são importantes para os projetos pelo seguinte motivo: C. Melhoram a qualidade dos softwares produzidos. A prática de testes melhora a qualidade dos softwares produzidos. Além disso, garante a descoberta de problemas antes da entrega do produto ao cliente, melhora a imagem da fábrica, devido à demonstração de cuidado com o que é produzido, diminui o tempo e as despesas com a correção dos problemas e permite a descoberta precoce de problemas no software. 2. As atividades de verificação e validação pretendem assegurar que o software esteja coerente com seus objetivos e atenda às necessidades https://youtu.be/dsy4zaEi59s https://www.notion.so/signed/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F5401b184-836f-4210-95f2-6c0aafa3ad81%2FTipos_de_Teste.pdf?table=block&id=0a62e5b8-c44c-4440-8dd2-a2023c2257ef&spaceId=fcc5786c-573b-4391-994d-f958847592c7&userId=dfbbbfa9-7afa-4f6b-85b4-3e86e745823b&cache=v2 https://www.notion.so/Desafio-269174f75f844825aafe126db8939bbd https://www.notion.so/Infogr-fico-ef9dc13b1fec4ec0ae308dd6742c4972 TESTE DE SOFTWARE I 6 dos clientes. Nesse sentido, verificação e validação consistem respectivamente em: A. Analisar se o software atende aos seus requisitos ese ele atende às expectativas do cliente. A atividade de verificação analisa se o software atende aos requisitos levantados. Já a atividade de validação verifica se ele atende às expectativas dos clientes. 3. A atividade de validação é uma das mais importantes dos testes de software e ela pode ser classificada, basicamente, em validação estática e dinâmica. Qual é a diferença entre elas? E. Validação estática é feita de forma automatizada e validação dinâmica é feita manualmente. 4. O tipo de teste que avalia o código-fonte de um software, identificando problemas com a escrita de programa utilizada pelo desenvolvedor, é chamado de: B. Teste de caixa branca. O teste de caixa branca avalia o código-fonte do software e a lógica de programação usada pelo desenvolvedor, identificando problemas em laços de repetição, condições lógicas, fluxo de dados, entre outros aspectos. 5. Quando há a necessidade de testar novamente um software por completo, a fim de verificar se problemas que haviam sido resolvidos antes da modificação ou liberação de novas funcionalidades não voltaram a acontecer, esse teste se chama: D. Teste de regressão. No teste de regressão, a cada versão nova, que envolve alterações em funcionalidades já existentes ou inclusão de funcionalidades novas, todo o software é testado novamente, a fim de verificar se uma dessas novidades não resultou em problema de funcionamento e também se problemas já corrigidos não voltaram a acontecer. TESTE DE SOFTWARE I 7 Verificação, validação e testes de Software Apresentação Quando adquirimos algum produto, independentemente do que seja, provavelmente ele passou por uma bateria de testes para que fosse colocado no mercado. Com o software, espera-se que aconteça o mesmo. Mas você já imaginou que uma verificação, validação ou teste de algo pode ser uma oportunidade e tanto para os problemas aparecerem? Isso porque essas etapas não estão na lista das atividades mais queridas de uma equipe de desenvolvimento. Imagine você ter horas de trabalho, deduzir que finalizou tudo, e depois descobrir diversos erros? Geralmente é isso que ocorre, pois um software é tão complexo que se torna praticamente impossível nenhum erro ser encontrado. A garantia de que o software execute pelo menos a maioria das funcionalidades definidas pelo usuário é sinônimo de qualidade. Basta imaginar que qualquer produto que passe por uma série de testes, consequentemente, estará menos apto a apresentar algum defeito futuro. Nesta Unidade de Aprendizagem, você aprenderá sobre verificação, validação e testes de software, aspectos fundamentais para que você possa garantir ou atrelar qualidade ao software sendo desenvolvido. Dessa forma, você verá que um software traz uma relativa complexidade, a qual exige que sejam aplicados diversos tipos de softwares, para que, no final, o produto execute com eficácia todas as funcionalidades estabelecidas e esperadas pelo cliente. Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Explicar o processo de verificação e validação de software. Definir verificação e validação estáticas e dinâmicas. Categorizar os tipos de testes de software. https://youtu.be/1N93ADmj97I https://youtu.be/1N93ADmj97I TESTE DE SOFTWARE I 8 https://s3-us-west-2.amazonaws.com/secure.notion-static.com/537a81c8-62 bd-407f-8395-bd5c200df528/Verificao_validao_e_testes_de_Software2.pdf 🎯 Desafio 📈 Infográfico 1. A verificação e a validação compõem a fase em que os softwares são submetidos a diversos testes; cada uma das atividades desempenhando funcionalidades diferentes. Assinale a alternativa que traz a definição da funcionalidade referente à verificação e à validação, respectivamente. A. A verificação é responsável por realizar a análise do software diante dos requisitos funcionais e não funcionais, de modo a garantir o desenvolvimento correto do software. A validação assegura que o sistema atenda aos requisitos do cliente. Assim como a verificação e a validação, a qualidade de um software também pode ser garantida por meio de revisões técnicas, auditorias de qualidade, viabilidade, etc. 2. Assinale a alternativa que traz o tipo de teste funcional que verifica se o sistema valida todas as transações e retorna todas as mensagens de erro no caso de receber informações incorretas. C. Tratamento de erros. Existem testes que são executados durante todo o desenvolvimento, que é o caso do referido teste; mas também existem testes que são executados a cada iteração, como, por exemplo, na homologação. 3. Assinale a alternativa que consta o tipo de teste que analisa o desempenho do sistema com dados reais, testando a performance com múltiplos acessos simultaneamente. B. Teste de execução. Esse tipo de teste deve ser executado tanto no início quanto na homologação do software, por meio do qual os aspectos incoerentes https://www.notion.so/signed/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F537a81c8-62bd-407f-8395-bd5c200df528%2FVerificao_validao_e_testes_de_Software2.pdf?table=block&id=374ca016-1b59-489f-a18f-39769f3c88c0&spaceId=fcc5786c-573b-4391-994d-f958847592c7&userId=dfbbbfa9-7afa-4f6b-85b4-3e86e745823b&cache=v2 https://www.notion.so/Desafio-f27d3e100e5d48afa95027cfdd89f340 https://www.notion.so/Infogr-fico-086644e2cb054db7ba4228eecae72dac TESTE DE SOFTWARE I 9 devem ser levantados e analisados. 4. Assinale a alternativa que traz o tipo de teste em que a arquitetura do software é desenvolvida em paralelo à aplicação de diversos testes, em que o foco é a descoberta de erros relacionados à interface. D. Teste de integração. A execução dos testes geralmente utilizam ferramentas denominadas CASE, as quais executam os testes e realizam comparações entre os resultados. 5. Assinale a alternativa que traz, respectivamente, os tipos de testes responsáveis por encontrar erros de estrutura de dados e as decisões lógicas de um software. A. Caixa-preta e caixa-branca. Os testes de caixa-preta e de caixa-branca detectam também erros de interface, funções incorretas ou ausentes, assim como garantem que todos os caminhos independentes de módulos sejam exercitados pelo menos uma vez. Ferramentas de teste Apresentação São muitas as ferramentas de software que servem para automatizar a realização dos testes. Algumas das ferramentas são adquiridas de forma gratuita, por serem open source, e outras necessitam de pagamento para liberação da licença. Cabe ao gestor definir aquelas ferramentas que serão utilizadas em um determinado projeto de software, pois a disponibilidade é muita, e é preciso adaptar cada uma à complexidade do projeto, à experiência da equipe de testadores em programação, e ainda à linguagem de programação que foi utilizada. Assim, é muito importante conhecer as ferramentas de teste de software mais utilizadas pelos profissionais da área de qualidade de software. Nesta Unidade de Aprendizagem, você vai estudar as principais ferramentas de teste de software, sua importância, e ainda como aplicar o JUnit em testes de software em Java. TESTE DE SOFTWARE I 10 Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Identificar as ferramentas de software. Descrever as principais ferramentas de teste de software. Aplicar o teste de software com uso do JUnit e testes com JAVA. https://youtu.be/J1oKFxry8W0 https://s3-us-west-2.amazonaws.com/secure.notion-static.com/0f7fc527-873 7-43d1-accd-7836213376d6/Ferramentas_de_teste.pdf 🎯 Desafio 📈 Infográfico 1. Os testes de software precisam ser realizados ao longo de todo o ciclo de vida do projeto de desenvolvimento do software, pois quanto antes os problemas forem encontrados, mais fácil e menos custoso será corrigi- los. Durante a realização dos testes de software, é possível encontrar três tipos de problemas, e entre eles está: A. Defeito. Durante os testes de software é possível encontrar errosque são causados por algo que a pessoa fez de errado; defeitos que são decorrentes dos erros; e falhas que são decorrentes dos defeitos e podem gerar paralisação do sistema como um todo. Os demais problemas podem ser encontrados sem que seja necessário realizar testes no software. 2. A utilização de ferramentas automatizadas de teste de software assegura maior produtividade e agilidade. Outro benefício proporcionado pelas https://youtu.be/J1oKFxry8W0 https://www.notion.so/signed/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F0f7fc527-8737-43d1-accd-7836213376d6%2FFerramentas_de_teste.pdf?table=block&id=735094db-94cb-4e56-b595-edce73f1bb90&spaceId=fcc5786c-573b-4391-994d-f958847592c7&userId=dfbbbfa9-7afa-4f6b-85b4-3e86e745823b&cache=v2 https://www.notion.so/Desafio-2ad714ec4c364ac98ec018a268e0717b https://www.notion.so/Infogr-fico-b0d9915269dd48c38f589b74ce32153f TESTE DE SOFTWARE I 11 ferramentas automatizadas é: E. Geração de arquivos de log com os testes feitos e os problemas encontrados. A geração de arquivos de log, com tudo o que aconteceu durante as atividades de teste, indicando os problemas encontrados, as datas em que foram encontrados e qual testador os encontrou, certamente é um dos principais benefícios trazidos pelo uso das ferramentas automatizadas de testes. Os demais benefícios listados são encontrados mesmo que os testes sejam feitos manualmente. 3. Existem inúmeras ferramentas para a automatização de testes de software, e não existe uma que seja ideal para ser utilizada em todos os projetos. Mesmo assim, um dos aspectos a seguir é importante para todas as ferramentas de teste de software, sem exceção: C. Documentar todos os problemas encontrados durante os testes. A documentação e o log de todos os erros, defeitos e falhas encontrados durante a realização dos testes de software são aspectos importantes que todas as ferramentas devem apresentar. Os demais aspectos são inerentes às ferramentas, de acordo com o tipo de projeto a que se adaptam. 4. O Selenium é uma ferramenta que pode ser utilizada em diversos ambientes de programação e suporta casos de teste de sistemas mais complexos. Uma das características importantes do Selenium é que: D. Exige conhecimento técnico e habilidades avançadas de programação. Para trabalhar com o Selenium, é preciso que os testadores tenham um vasto conhecimento técnico e habilidades avançadas de programação. As demais características listadas não se aplicam ao Selenium. 5. A ferramenta JUnit é utilizada principalmente para realizar testes unitários em aplicações desenvolvidas em Java. O resultado dos testes é apresentado de uma forma semelhante a um semáforo, que contém as seguintes cores: TESTE DE SOFTWARE I 12 B. Verde, azul e vermelha. O semáforo onde os resultados dos testes do JUnit são apresentados contém as seguintes cores: verde, que significa que o teste foi executado com sucesso; azul, que significa que o teste apresentou erro de validação; e vermelha, que significa que houve algum erro de exceção na escrita do código em Java.
Compartilhar