Questões de Concurso
Sobre teste de software em engenharia de software
Foram encontradas 1.442 questões
( ) O teste unitário tem por finalidade avaliar o sistema completo e integrado, verificando sua conformidade com os requisitos especificados.
( ) O teste de integração tem como objetivo identificar falhas na comunicação e na interação entre módulos ou componentes do sistema.
( ) O teste de regressão é realizado após modificações no sistema, com o propósito de verificar se funcionalidades previamente implementadas continuam operando corretamente.
( ) O teste caixa branca fundamenta-se na análise da estrutura interna do código, considerando fluxos lógicos, decisões e caminhos de execução.
Uma universidade possui um sistema acadêmico desenvolvido em PHP com framework próprio. Atualmente, o deploy é feito manualmente via FTP (File Transfer Protocol) para o servidor de produção. Em períodos de matrícula, erros de publicação causam indisponibilidade do sistema. A equipe decidiu implementar um pipeline de CI/CD (Integração Contínua/Implantação Contínua). O repositório está no GitLab e os servidores utilizam Linux. É obrigatório garantir: versionamento rastreável, execução automática de testes antes do deploy e controle formal sobre liberações para produção.
Assinale a alternativa que atende de forma CORRETA aos requisitos técnicos e de governança para o novo processo de deploy:
Uma equipe de desenvolvimento adotou práticas de DevOps em um sistema corporativo. O fluxo definido estabelece que todo o código é versionado em Git, e que a cada push para o repositório remoto é executado automaticamente um pipeline de CI/CD.
Nesse pipeline são realizadas etapas de build, testes automatizados e análise estática de código. Caso todas as etapas sejam concluídas com sucesso, o artefato gerado é automaticamente implantado em ambiente de homologação.
Com base nos conceitos de integração contínua, entrega contínua e automação de pipelines, analise as afirmativas a seguir.
I. A integração contínua (continuous delivery) consiste na prática de integrar alterações de código com frequência em um repositório compartilhado, em que builds e testes automatizados são executados para detectar falhas precocemente no processo de desenvolvimento.
II. A entrega contínua (continuous delivery) pressupõe que o sistema esteja sempre em um estado potencialmente implantável em produção, embora a liberação final para produção dependa de uma aprovação manual.
III. Em pipelines de CI/CD, ferramentas como GitHub Actions e GitLab CI/CD permitem definir workflows ou pipelines automatizados por meio de arquivos de configuração versionados no próprio repositório do projeto.
IV. A cultura DevOps enfatiza a automação de processos de build, teste e deploy, reduzindo a necessidade de interação entre equipes de desenvolvimento e operações ao longo do ciclo de entrega de software.
Assinale a alternativa CORRETA:
Assinale a alternativa correta considerando os princípios dos testes de caixa branca.
Acerca da UML (Unified Modeling Language) e dos fundamentos de teste de software, julgue o item seguinte.
De acordo com o princípio do early testing, o planejamento das atividades de teste deve ter início nas fases iniciais do desenvolvimento, o que tende a reduzir o custo e o esforço de correção de defeitos.
Acerca da UML (Unified Modeling Language) e dos fundamentos de teste de software, julgue o item seguinte.
Nos testes de caixa‑branca, os casos de teste são elaborados com base no conhecimento da estrutura interna e da lógica de implementação do componente avaliado.
Acerca da UML (Unified Modeling Language) e dos fundamentos de teste de software, julgue o item seguinte.
Um teste unitário, por avaliar a menor unidade testável de software, não deve empregar objetos simulados ou dublês de teste para isolar dependências externas, sob pena de descaracterizar a sua natureza.
Com base nos fundamentos da engenharia de software, julgue o item a seguir.
Nos testes de caixa‑preta, a elaboração de casos de teste pode basear‑se na especificação funcional esperada do sistema, independentemente do conhecimento da estrutura interna do código.
I.Testes negativos utilizam entradas inválidas, inesperadas ou fora das regras de negócio para verificar a robustez do sistema.
II.Em um teste negativo, espera-se que o sistema trate o erro de forma controlada, sem falhas ou comportamentos inesperados.
III.Testes negativos são aqueles em que o sistema deve falhar obrigatoriamente para que o teste seja considerado bem-sucedido.
É correto o que se afirma em:
I.O esforço de teste deve ser distribuído igualmente entre todas as funcionalidades, garantindo cobertura uniforme do sistema.
II.A seleção de casos de teste deve priorizar cenários críticos de negócio e combinações representativas de dados, em vez de tentar cobrir todas as possibilidades.
III.Técnicas como particionamento de equivalência e análise de valor limite são utilizadas para reduzir o número de testes mantendo boa cobertura funcional.
É correto o que se afirma em:
I. Testes de Regressão automatizados são cruciais para garantir que novas funcionalidades ou correções de bugs não tenham introduzido efeitos colaterais indesejados em partes do sistema que antes funcionavam corretamente. II. O Test-Driven Development (TDD) é uma prática em que os testes automatizados são escritos depois que o código de produção está completamente finalizado, servindo apenas como uma forma de documentar o comportamento do sistema. III. A automação de testes elimina completamente a necessidade de testes manuais, pois os scripts automatizados são capazes de cobrir 100% dos cenários de uso, incluindo testes de usabilidade e exploratórios, que avaliam a experiência do usuário.
Está correto o que se afirma em:
Durante o desenvolvimento de um sistema de gestão de financiamentos em uma agência de fomento governamental, a equipe de qualidade foi responsável por planejar a estratégia de testes do software. Após a implementação dos módulos do sistema, como cadastro de solicitantes, análise de crédito, gestão de contratos e geração de relatórios, a equipe decidiu realizar um teste em que todos os módulos foram integrados simultaneamente, sem nenhuma integração parcial ou incremental, formando o sistema completo, para então verificar o funcionamento conjunto de todos os componentes de uma única vez. Considerando os conceitos de testes de software, a abordagem de teste de integração descrita no caso é denominada:
Os testes funcionais compõem uma categoria essencial na estratégia de qualidade de software, sendo amplamente utilizados para verificar a conformidade do sistema com seus requisitos. Diante disso, analise as afirmativas a seguir sobre testes funcionais e suas técnicas:
II. A técnica de particionamento de equivalência divide o domínio de entrada em grupos de valores que devem ser tratados de forma idêntica pelo sistema, permitindo reduzir o número de casos de teste sem comprometer a cobertura dos cenários representativos.
III. Testes funcionais e testes de unidade são equivalentes em escopo e propósito, pois avaliam o comportamento do sistema sob a perspectiva do usuário final, sem analisar detalhes de implementação.
IV. A análise de valor limite é uma técnica de teste funcional que concentra os casos de teste nos extremos das classes de equivalência, como valores imediatamente abaixo, exatamente no limite e imediatamente acima dele, em que a probabilidade de ocorrência de erros é maior.
Estão CORRETAS:
Analise as afirmativas abaixo e assinale a alternativa INCORRETA:
Julgue o item subsequente, referentes à construção e automação de pipelines em nuvens.
Em pipelines de integração contínua, exige-se intervenção manual para o início de cada etapa do processo de build e testes após uma alteração no código-fonte, a fim de se evitarem erros em commits de código por parte do desenvolvedor.