Showing posts with label Testing. Show all posts
Showing posts with label Testing. Show all posts

Sunday, May 22, 2011

Check List Document for writing TestCases

Being an Form based Application(product i have has more than 500 forms minimum), i have prepared a Checklist for writing testcases . Hope it helps some one.

Checklist:

Usability

1. Check for presence of
  • Links
  • Buttons
  • Help Messages(Info messages if any needed)
  • Color / Type of Text
  • Size of the text(Maximum text that can be entered)

Functionality

2. Functionality
  • Check for the working of all the links
  • Check all features of the application (* Checking for what the software is intended for (Eg. If compose mail, whether the mail is sent correctly to the specified user(s))


Messages

3. Information / Errors / Warnings (thrown to user, by the system)
4. Confirmation messages
5. Warnings/Errors when something is done wrong

Configurations

6. Configurations based
  • Browser based - Write check lists of what browsers and browser versions are supported
  • OS based - Testcases should cover testing for all the OS supported
  • Database Compatablity - Check what versions of databases are supported (Application i use support quite a few (Mysql , MSSQL 2000 , MSSQL 2003 , MSSQL 2007, Oracle )

The Configurations will change based on the Application , eg Testing an Mobile app conisists of testing in different hardware , Testing an Mail should be tested in various mail clients like OutLook , Gmail and with IMAP , POPS , etc

Impact

7. Impact testing
*Check for the impact areas due to the change
8. Breakdown (or) Crash ie application down / site down
*Test to check the behavior when an unexpected breakdown occurs (Eg. like server shutdown/crash)
9. Recovery
*Test to check the behavior on recovery (Eg. like restarting the server)
10. Inopportune scenarios
*Scenarios when a sudden valid thing happens at a particular time which is not expected to happen at that time (Eg. trying to delete a file while some one else is viewing it)


Database Testing

11. Database check
  • Checking the relevant database tables for any operation
  • Check for unwanted queries , tables
  • Check for unique key, foreign key constrains , etc


BackUp / Upgrades

12.Backup / Restore
*Take all database and configuration backup & move to some other system, restore the backed up data and checking for proper working
13. Check whether upgrades ( if present) are happening correctly or not
14. Check whether all the functionalities are working well after the upgrade

General

15. Multiple source to achieve things - Various places from where a particular operation can be done
16. Different options on doing a kind operation from different places
* Differences in doing a same operation from different areas (same functionality can by achieved by various methods
17. Tab feature , Enter key , Delete and various keyboard based shortcuts
18. Duplication - Adding multiple entries of same kind
19. Deleting and adding the same entry
*Delete a particular entry and adding the same entry again with the same name and configuration

Internalization

20. I18N
* Check if all the strings are i18ned
21. Check if the text boxes accept non-english characters
22. Check whether all the functionalities are working in non-english language

Logs

23. Code checks
24. Check whether Proper debugging is enabled to ease support
25. Logging - Check whether proper logging has been done for the feature

Various Logins

26. Type of user login - Check the functionality with free user / paid user / administrator previliges etc
27. Impact of a particular change in different places
28. License Check
*Check for license(if any) for any new feature implementation

Security

29.Security Testing
  • Password encryption
  • Not to expose files
  • Not to expose hidden functionalites (Typing the full url some times will bypass the checks )
  • Check whether the passwords can be seen in Logs / database /URLS etc .. No password should be in readable format


Performance Related

30.Performance testing
31.Scalability - Max no of nodes
32.Max no of users that can log in / or can access the site at a time
33.Stress test