ENG. DE
REQUISITOS e

TESTE

by Luiz Lins

Agenda

O que é teste?

A palavra "teste" é um anglicismo, vindo do inglês "test", que se refere a uma prova ou experimento. 

Quem testa isso?

A sigla QA significa “Quality Assurance” (ou, do português: garantia de qualidade) e se carateriza pelo processo sistemático para que produtos ou serviços atendam a padrões de qualidade estabelecidos.

 

Fonte: https://softdesign.com.br/blog/o-papel-do-qa-no-time-de-produto/#:~:text=A%20sigla%20QA%20significa%20%E2%80%9CQuality,a%20padr%C3%B5es%20de%20qualidade%20estabelecidos.

E o que ele faz?

  • Análise do ciclo de desenvolvimento por meio da investigação de todas as etapas do desenvolvimento do produto;
  • Garantia de funcionamento com o objetivo de assegurar que os programas funcionem corretamente;
  • Revisão de pré-requisitos a partir da verificação dos requisitos do software e se eles estão sendo atendidos;
  • Relato de falhas, o que significa a identificação e comunicação de falhas ao time de desenvolvimento;
  • Teste de software (funcional e não funcional) com a aplicação de diferentes tipos de avaliações para colocar o produto sob análise;
  • Testes manuais e automatizados para realizar os testes acima citados;
  • Formulação de estratégias e planos de teste, o que contribui para a criação de estratégias de verificação e planos de ação;
  • Avaliação dos resultados para garantir a qualidade do produto.

Usabilidade

Uma forma de analisar a usabilidade de um produto com pessoas reais.

O que é teste de usabilidade?

  • identificar erros
  • melhorar a UX do produto
  • conseguir feedbacks

vanTagens

  • moderado

  • não moderado

Formas de testes

características:

 

- presencial ou remoto

- supervisão direta

- aberto para conversas

- geram mais insights

- podem ser mais caros

moderado

características:

 

- presencial ou remoto

- sem supervisão

- fácil de elaborar

- rápido de aplicar

- baixo custo

não moderado

Qual é o melhor?

Não existe o melhor!

métodos

intro

os métodos de um teste de usabilidade, quais são?

métodos

exploratório

características:

 

- debate entre participantes

- feedbacks imediatos

avaliativo

características:

 

- verificar as funções gerais do produto

- analisar a satisfação

comparativo

características:

 

- propõe duas soluções

- identificar qual é o cenário ideal

Fluxos

Nem todos os fluxos são importantes

se você não tem certeza se aquilo está intuitivo

se existem várias formas de concluir o objetivo

se você precisa verificar se um cenário está melhor

porque estou querendo testar isso?

QA

fluxo de teste

1

Digitar nome

2

Digitar senha

3

Confirmar

4

Redirecionar para página

passos para o login

Mensagem de erro

Não digitar campo obrigatório

Mensagem de erro

Senha incorreta

Sempre ficar atendo ao fluxo de teste.

– Alura

Ao tentar se logar e falhar 3 vezes consecutivas o usuário terá que esperar 15 minutos para tentar logar novamente.

1

Digitar nome

2

Digitar senha

3

Confirmar

4

Redirecionar para página

passos para o login

Mensagem de erro

Não digitar a senha

Mensagem de erro

Senha

incorreta 3x

Bloqueio de

15 minutos

passos

Gerar Cenários (teste)

Outra regra

passos

passos

passos

regra

regra

regra

Cenário

1 cenário

Identificação dos cenários de testes

2 cenário

3 cenário

cenário

Senha

incorreta 3x

cenário

Usuário inexistente

cenário

Senha incorreta

4 cenário

cenário

Senha obrigatória

5 cenário

cenário

Usuário obrigatório

Criar um fluxograma dos cenários de acesso à plataforma que será apresentada ao professor Chistiano.

Vamos testar o cypress

 

 

 

>> npm install cypress --save-dev

>> npx cypress open

Vamos testar o cypress

 

 

 

FrontEnd

>> https://github.com/alura-cursos/vollmedclient

 

BackEnd

>> https://github.com/alura-cursos/3745-cypress-volserver

Vamos versionar nosso código

 

branchs

>> producao

>> main

>> desenvolvimento

>> testes

rodar

 

BackEnd

npm install && npm start

 

FrontEnd

npm install && npm start

Configurar baseurl

const { defineConfig } = require("cypress");

module.exports = defineConfig({
  e2e: {
    setupNodeEvents(on, config) {
      // implement node event listeners here
    },
    baseUrl: 'http://localhost:3000/',
    video: true,
    reporter: 'mochawesome',
    reporterOptions: {
      reportDir: 'cypress/results',
      overwrite: false,
      html: true,
      json: false,
      timestamp: "mmddyyyy_HHMMss"
    }
  },
});

.get(element)

it('Clica no link "Cadastra-se" e redireciona para a página de cadastro da clínia', () => {
  
    cy.get('[href="/cadastro"]').click()
  
})

.location(path)

.should(conditions, path)

it('Clica no link "Cadastra-se" e redireciona para a página de cadastro da clínica', () => {
  
    cy.get('[href="/cadastro"]').click()
  
  	cy.location('pathname').should('equal', '/cadastro')
  
})


it('Digita dados da clinica e exibe a área para inserção de dados técnicos', () => {
    cy.get('[href="/cadastro"]').click()
    cy.get('[data-test="inputNome"]').type('Catarina P')
    cy.get('[data-test="inputCNPJ"]').type('123598432')
    cy.get('[data-test="inputEmail"]').type('catarina@email.com')
    cy.get('[data-test="inputSenha"]').type('Senha123')
    cy.get('[data-test="inputSenhaVerificada"]').type('Senha123')
    cy.get('.sc-bcXHqe').click()
    cy.contains('h2', 'Agora, os dados técnicos:').should('be.visible')
    cy.get('.sc-laZRCg').should('exist').should('be.visible')
 })

casos de teste

BDD

Desenvolvimento guiado por comportamentos

qualidade

como definir isso?

atividade da pessoa qa

atividade da pessoa qa

manifesto agil

Todo mundo é responsável pela qualidade.

– Alura

https://cucumber.io/docs/gherkin/reference

Definição de pronto

Precisam de testes de pré-lançamento?

nossas novidades...

SIM

Podem apresentar bugs?

NÃO/SIM

Precisam passar outra validação além do QA?

SIM

Definição de pronto;

 

* Define se uma atividade foi concluída ou não;

* Vale para todas as funcionalidades;

 

Definition of done (DOD)

Teste regressivo

Teste de fumaça

Teste de sanidade

Teste

By Luiz Lins

Teste

  • 192