Sie sind auf Seite 1von 24

Bacharelado em Cincia e Tecnologia

Processamento da Informao
TESTE DE MESA

TESTE DE MESA
Prof. Dr. xxx
Centro de Matemtica, Computao e
Cognio

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Objetivos
Aprender a verificar se o algoritmo (ou
programa) leva a um resultado esperado
atravs de simulao de valores, utilizando a
tcnica de TESTE DE MESA

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

TESTE DE MESA
O teste de mesa simula a execuo de um
algoritmo sem utilizar o computador,
empregando apenas papel e caneta (ou
melhor sem utilizar um compilador ou
interpretador).

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Passos para realizar o teste de mesa


Identifique as variveis envolvidas em seu algoritmo;
Crie uma tabela com linhas e colunas, em que:
cada coluna representar uma varivel a ser
observada
as linhas correspondero s instrues observadas
pelo teste de mesa e
a primeira coluna dever identificar os nmeros das
linhas correspondentes s instrues observadas;
LINHA
5
7

a
?
?

b
?
?

c
?
?

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Passos para realizar o teste de mesa


De cima para baixo, preencha cada uma das linhas da
tabela com o nmero da linha que identifica cada
instruo, seguido dos valores assumidos pelas variveis
do programa aps a execuo daquela instruo.
LINHA
5
7
11
13

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Passos para realizar o teste de mesa


Para indicar que o valor de uma varivel foi lido,
envolva-o entre parnteses
Se o valor foi escrito pela instruo, envolva-o entre
chaves
Para valores indefinidos, isto , aqueles que ainda no
foram determinados at uma dada instruo, utilize a
interrogao
LINHA
a
b
c
5

(18)

7
11
13

{7.5}

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

EXEMPLO

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Exemplo
Vejamos agora como um teste de mesa funciona por
meio de um algoritmo simples:
Escreva um algoritmo para ler dois nmeros (a e b) e
apresentar o resultado das 4 operaes aritmticas
bsicas (adio, subtrao, multiplicao e diviso)

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Resolvendo
Escreva um algoritmo para ler dois nmeros (a e b) e apresentar o
resultado das 4 operaes aritmticas bsicas (adio, subtrao,
multiplicao e diviso)
SADA: Quais os resultados que o algoritmo deve fornecer ?
ENTRADA: Quais os insumos necessrios para se obter a sada?
PROCESSAMENTO: Como transformar os insumos na sada?

SADA: soma, subtrao, produto e diviso


ENTRADA: dois nmeros (a, b)
PROCESSAMENTO:
Soma = a + b
Subtracao = a - b
Divisao = a / b
Produto = a * b

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Soluo
Declarao de
Variveis

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Soluo
Entrada de
Dados

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Soluo

Processamento

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Soluo

Sada de Dados

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Aplicao do Teste de Mesa

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

OUTRO
EXEMPLO

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Resolvendo
Escreva um algoritmo para ler dois nmeros (a e b) e trocar os seus
valores. Exibir os valores de a e b aps a troca
SADA: Quais os resultados que o algoritmo deve fornecer ?
ENTRADA: Quais os insumos necessrios para se obter a sada?
PROCESSAMENTO: Como transformar os insumos na sada?

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Resolvendo
Escreva um algoritmo para ler dois nmeros (a e b) e trocar os seus
valores. Exibir os valores de a e b aps a troca
SADA: Quais os resultados que o algoritmo deve fornecer ?
ENTRADA: Quais os insumos necessrios para se obter a sada?
PROCESSAMENTO: Como transformar os insumos na sada?

SADA: valores de a e b (trocados)


ENTRADA: dois nmeros (A, B)
PROCESSAMENTO:
A=B
B=A

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Soluo
Declarao de
Variveis
Entrada de
Dados

Processamento
Sada de Dados

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Aplicao do Teste de Mesa


LINHA
7
9
10
11
12
13

a
(12)

b
?
(3)

3
3
{3}
{3}

Escreva um algoritmo para ler dois nmeros (a e b) e trocar os seus


valores. Exibir os valores de a e b aps a troca

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Aplicao do Teste de Mesa


LINHA
7
9
10
11
12
13

a
(12)

b
?
(3)

3
3
{3}
{3}

Nota-se que o RESULTADO exibido pelo programa INVLIDO, ou seja, no


atende ao enunciado. O programa deveria ter exibido

3 e 12.

O teste de mesa cumpriu seu objetivo que foi detectar o ERRO.

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Nova soluo

Para efetuar a troca necessita-se de uma TERCEIRA varivel (auxiliar)

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Aplicao do Teste de Mesa


LINHA
7
9
10
11
12
13
14

a
(12)

b
?
(3)

aux
?

12
3
12
{3}
{12}

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

Observaes
Os testes de mesa podem ser SIMPLIFICADOS, focando
apenas nas MODIFICAES das variveis, sem os
detalhes das linhas em que ocorrem as modificaes
Nesse caso, fica mais difcil reconstituir o passo a passo
Testes de Mesa so essencialmente importantes com
ALGORITMOS COMPLEXOS (com seleo, repetio,
etc)

Bacharelado em Cincia e Tecnologia


Processamento da Informao
TESTE DE MESA

AGORA
PRATICAR!!!

Das könnte Ihnen auch gefallen