2010-08-15 4 views
2

Je suis novice en matière de test, alors j'essaie de tester quelques éléments aléatoires que j'ai trouvés sur Internet. Ce sont les cas de test que j'ai pensé pour tester ces choses. Toute aide pour m'aider est très appréciée.Besoin d'aide avec les tests

1) Test d'une zone de texte.

Test cases: 
Unit tests: 
Passing alphabets from [a-z], [A-Z] 
digits [0-9] , special symbols 
test special characters specific to a language like \n etc 

Stress tests: 
To add a string as long as possible 

D'autres cas de test sont-ils possibles? Ai-je besoin de tester plusieurs zones de texte?

+2

Cela ressemble un peu à une question de devoirs plutôt qu'à un problème de programmation pratique. Peut-être pourriez-vous nous en dire un peu plus sur ce que vous essayez d'accomplir avec ces tests, comment vous prévoyez d'utiliser les zones de texte, etc. –

Répondre

2

Pour les tests d'entrée générale:

  • test les limites supérieures de votre entrée: (max, max + 1, MAX-1)
  • Testez les bornes inférieures de votre entrée: (min, min-1, min + 1)
  • Testez le point médian (max + min/2)
  • test caractères hors du commun: [email protected]#$%^&*()-=+_; ': "\ | [] {},/<>.? `(< - voir: ces caractères briser l'analyseur de code StackOverflow HTML)
  • Test unicode caractères
  • cordes d'entrée de test longue
  • test vide/null entrée

Essayez ces cordes et voyez si votre programme plante:

"%n" 
"%x%x%x%n" 

Si vous utilisez printf() la manière dangereuse, il va planter.

+0

+1 Bonne liste, essayez aussi d'entrer 0, 00, 001, .. . –

2

En fonction de votre langue, vous pouvez essayer de passer null au lieu d'une chaîne. Vous voulez également passer des chaînes Unicode avec un tas de caractères étranges.

1

Avec tous les tests de type fonctionnel que vous avez mentionnés, pensez également à tester les attaques par injection SQL. Essayez d'entrer des commandes réelles dans la zone de texte.

http://en.wikipedia.org/wiki/SQL_injection

exemples classiques incluent l'entrée

' or '1'='1

' or '1'='1';/*'

Ce qui pourrait donner un énoncé tel que

SELECT * FROM users WHERE name = '' OR '1'='1';

Questions connexes