This is a testing checklist for web and desktop applications.
Note – This article is little long (over 2700 words). My goal is to share one of the most comprehensive testing checklist ever written and this is not yet done. I’ll keep updating this post in future with more scenarios. If you don’t have time to read it now, please feel free to share with your friends and bookmark it for later.
Make testing checklist as an integral part of test cases writing process. Using this checklist you can easily create hundreds of test cases for testing web or desktop applications. These are all general test cases and should be applicable for almost all kind of applications. Refer these tests while writing test cases for your project and I’m sure you will cover most testing types except the application specific business rules provided in your SRS documents.
Though this is a common checklist, I recommend preparing a standard testing checklist tailored to your specific needs using below test cases in addition with application specific tests.
Importance of Using Checklist for Testing:
- Maintaining a standard repository of reusable test cases for your application will ensure the most common bugs will be caught more quickly.
- Checklist helps to quickly complete writing test cases for new versions of the application.
- Reusing test cases help to save money on resources to write repetitive tests.
- Important test cases will be covered always making it almost impossible to forget.
- Testing checklist can be referred by developers to ensure most common issues are fixed in development phase itself.
Few notes to remember:
1) Execute these scenarios with different user roles e.g. admin user, guest user etc.
2) For web applications these scenarios should be tested on multiple browsers like IE, FF, Chrome, and Safari with versions approved by client.
3) Test with different screen resolutions like 1024 x 768, 1280 x 1024, etc.
4) Application should be tested on variety of displays like LCD, CRT, Notebooks, Tablets, and Mobile phones.
4) Test application on different platforms like Windows, Mac, Linux operating systems.
Comprehensive Testing Checklist for Testing Web and Desktop Applications:
Assumptions: Assuming that your application supports following functionality
- Forms with various fields
- Child windows
- Application interacts with database
- Various search filter criteria and display results
- Image upload
- Send email functionality
- Data export functionality
General Test Scenarios
1. All mandatory fields should be validated and indicated by asterisk (*) symbol
2. Validation error messages should be displayed properly at correct position
3. All error messages should be displayed in same CSS style (e.g. using red color)
4. General confirmation messages should be displayed using CSS style other than error messages style (e.g. using green color)
5. Tool tips text should be meaningful
6. Dropdown fields should have first entry as blank or text like ‘Select’
7. Delete functionality for any record on page should ask for confirmation
8. Select/deselect all records options should be provided if page supports record add/delete/update functionality
9. Amount values should be displayed with correct currency symbols
10. Default page sorting should be provided
11. Reset button functionality should set default values for all fields
12. All numeric values should be formatted properly
13. Input fields should be checked for max field value. Input values greater than specified max limit should not be accepted or stored in database
14. Check all input fields for special characters
15. Field labels should be standard e.g. field accepting user’s first name should be labeled properly as ‘First Name’
16. Check page sorting functionality after add/edit/delete operations on any record
17. Check for timeout functionality. Timeout values should be configurable. Check application behavior after operation timeout
18. Check cookies used in an application
19. Check if downloadable files are pointing to correct file paths
20. All resource keys should be configurable in config files or database instead of hard coding
21. Standard conventions should be followed throughout for naming resource keys
22. Validate markup for all web pages (validate HTML and CSS for syntax errors) to make sure it is compliant with the standards
23. Application crash or unavailable pages should be redirected to error page
24. Check text on all pages for spelling and grammatical errors
25. Check numeric input fields with character input values. Proper validation message should appear
26. Check for negative numbers if allowed for numeric fields
27. Check amount fields with decimal number values
28. Check functionality of buttons available on all pages
29. User should not be able to submit page twice by pressing submit button in quick succession.
30. Divide by zero errors should be handled for any calculations
31. Input data with first and last position blank should be handled correctly
GUI and Usability Test Scenarios
1. All fields on page (e.g. text box, radio options, dropdown lists) should be aligned properly
2. Numeric values should be right justified unless specified otherwise
3. Enough space should be provided between field labels, columns, rows, error messages etc.
4. Scroll bar should be enabled only when necessary
5. Font size, style and color for headline, description text, labels, infield data, and grid info should be standard as specified in SRS
6. Description text box should be multi-line
7. Disabled fields should be grayed out and user should not be able to set focus on these fields
8. Upon click of any input text field, mouse arrow pointer should get changed to cursor
9. User should not be able to type in drop down select lists
10. Information filled by users should remain intact when there is error message on page submit. User should be able to submit the form again by correcting the errors
11. Check if proper field labels are used in error messages
12. Dropdown field values should be displayed in defined sort order
13. Tab and Shift+Tab order should work properly
14. Default radio options should be pre-selected on page load
15. Field specific and page level help messages should be available
16. Check if correct fields are highlighted in case of errors
17. Check if dropdown list options are readable and not truncated due to field size limit
18. All buttons on page should be accessible by keyboard shortcuts and user should be able to perform all operations using keyboard
19. Check all pages for broken images
20. Check all pages for broken links
21. All pages should have title
22. Confirmation messages should be displayed before performing any update or delete operation
23. Hour glass should be displayed when application is busy
24. Page text should be left justified
25. User should be able to select only one radio option and any combination for check boxes.
Test Scenarios for Filter Criteria
1. User should be able to filter results using all parameters on the page
2. Refine search functionality should load search page with all user selected search parameters
3. When there is at least one filter criteria is required to perform search operation, make sure proper error message is displayed when user submits the page without selecting any filter criteria.
4. When at least one filter criteria selection is not compulsory user should be able to submit page and default search criteria should get used to query results
5. Proper validation messages should be displayed for invalid values for filter criteria
Test Scenarios for Result Grid
1. Page loading symbol should be displayed when it’s taking more than default time to load the result page
2. Check if all search parameters are used to fetch data shown on result grid
3. Total number of results should be displayed on result grid
4. Search criteria used for searching should be displayed on result grid
5. Result grid values should be sorted by default column.
6. Sorted columns should be displayed with sorting icon
7. Result grids should include all specified columns with correct values
8. Ascending and descending sorting functionality should work for columns supported with data sorting
9. Result grids should be displayed with proper column and row spacing
10. Pagination should be enabled when there are more results than the default result count per page
11. Check for Next, Previous, First and Last page pagination functionality
12. Duplicate records should not be displayed in result grid
13. Check if all columns are visible and horizontal scroll bar is enabled if necessary
14. Check data for dynamic columns (columns whose values are calculated dynamically based on the other column values)
15. For result grids showing reports check ‘Totals’ row and verify total for every column
16. For result grids showing reports check ‘Totals’ row data when pagination is enabled and user navigates to next page
17. Check if proper symbols are used for displaying column values e.g. % symbol should be displayed for percentage calculation
18. Check result grid data if date range is enabled
Test Scenarios for a Window
1. Check if default window size is correct
2. Check if child window size is correct
3. Check if there is any field on page with default focus (in general, the focus should be set on first input field of the screen)
4. Check if child windows are getting closed on closing parent/opener window
5. If child window is opened, user should not be able to use or update any field on background or parent window
6. Check window minimize, maximize and close functionality
7. Check if window is re-sizable
8. Check scroll bar functionality for parent and child windows
9. Check cancel button functionality for child window
Database Testing Test Scenarios
1. Check if correct data is getting saved in database upon successful page submit
2. Check values for columns which are not accepting null values
3. Check for data integrity. Data should be stored in single or multiple tables based on design
4. Index names should be given as per the standards e.g. IND_<Tablename>_<ColumnName>
5. Tables should have primary key column
6. Table columns should have description information available (except for audit columns like created date, created by etc.)
7. For every database add/update operation log should be added
8. Required table indexes should be created
9. Check if data is committed to database only when the operation is successfully completed
10. Data should be rolled back in case of failed transactions
11. Database name should be given as per the application type i.e. test, UAT, sandbox, live (though this is not a standard it is helpful for database maintenance)
12. Database logical names should be given according to database name (again this is not standard but helpful for DB maintenance)
13. Stored procedures should not be named with prefix “sp_”
14. Check is values for table audit columns (like createddate, createdby, updatedate, updatedby, isdeleted, deleteddate, deletedby etc.) are populated properly
15. Check if input data is not truncated while saving. Field length shown to user on page and in database schema should be same
16. Check numeric fields with minimum, maximum, and float values
17. Check numeric fields with negative values (for both acceptance and non-acceptance)
18. Check if radio button and dropdown list options are saved correctly in database
19. Check if database fields are designed with correct data type and data length
20. Check if all table constraints like Primary key, Foreign key etc. are implemented correctly
21. Test stored procedures and triggers with sample input data
22. Input field leading and trailing spaces should be truncated before committing data to database
23. Null values should not be allowed for Primary key column
Test Scenarios for Image Upload Functionality
(Also applicable for other file upload functionality)
1. Check for uploaded image path
2. Check image upload and change functionality
3. Check image upload functionality with image files of different extensions (e.g. JPEG, PNG, BMP etc.)
4. Check image upload functionality with images having space or any other allowed special character in file name
5. Check duplicate name image upload
6. Check image upload with image size greater than the max allowed size. Proper error message should be displayed.
7. Check image upload functionality with file types other than images (e.g. txt, doc, pdf, exe etc.). Proper error message should be displayed
8. Check if images of specified height and width (if defined) are accepted otherwise rejected
9. Image upload progress bar should appear for large size images
10. Check if cancel button functionality is working in between upload process
11. Check if file selection dialog shows only supported files listed
12. Check multiple images upload functionality
13. Check image quality after upload. Image quality should not be changed after upload
14. Check if user is able to use/view the uploaded images
Test Scenarios for Sending Emails
(Test cases for composing or validating emails are not included)
(Make sure to use dummy email addresses before executing email related tests)
1. Email template should use standard CSS for all emails
2. Email addresses should be validated before sending emails
3. Special characters in email body template should be handled properly
4. Language specific characters (e.g. Russian, Chinese or German language characters) should be handled properly in email body template
5. Email subject should not be blank
6. Placeholder fields used in email template should be replaced with actual values e.g. {Firstname} {Lastname} should be replaced with individuals first and last name properly for all recipients
7. If reports with dynamic values are included in email body, report data should be calculated correctly
8. Email sender name should not be blank
9. Emails should be checked in different email clients like Outlook, Gmail, Hotmail, Yahoo! mail etc.
10. Check send email functionality using TO, CC and BCC fields
11. Check plain text emails
12. Check HTML format emails
13. Check email header and footer for company logo, privacy policy and other links
14. Check emails with attachments
15. Check send email functionality to single, multiple or distribution list recipients
16. Check if reply to email address is correct
17. Check sending high volume of emails
Test Scenarios for Excel Export Functionality
1. File should get exported in proper file extension
2. File name for the exported Excel file should be as per the standards e.g. if file name is using timestamp, it should get replaced properly with actual timestamp at the time of exporting the file
3. Check for date format if exported Excel file contains date columns
4. Check number formatting for numeric or currency values. Formatting should be same as shown on page
5. Exported file should have columns with proper column names
6. Default page sorting should be carried in exported file as well
7. Excel file data should be formatted properly with header and footer text, date, page numbers etc. values for all pages
8. Check if data displayed on page and exported Excel file is same
9. Check export functionality when pagination is enabled
10. Check if export button is showing proper icon according to exported file type e.g. Excel file icon for xls files
11. Check export functionality for files with very large size
12. Check export functionality for pages containing special characters. Check if these special characters are exported properly in Excel file
Performance Testing Test Scenarios
1. Check if page load time is within acceptable range
2. Check page load on slow connections
3. Check response time for any action under light, normal, moderate and heavy load conditions
4. Check performance of database stored procedures and triggers
5. Check database query execution time
6. Check for load testing of application
7. Check for stress testing of application
8. Check CPU and memory usage under peak load condition
Security Testing Test Scenarios
1. Check for SQL injection attacks
2. Secure pages should use HTTPS protocol
3. Page crash should not reveal application or server info. Error page should be displayed for this
4. Escape special characters in input
5. Error messages should not reveal any sensitive information
6. All credentials should be transferred over an encrypted channel
7. Test password security and password policy enforcement
8. Check application logout functionality
9. Check for Brute Force Attacks
10. Cookie information should be stored in encrypted format only
11. Check session cookie duration and session termination after timeout or logout
11. Session tokens should be transmitted over secured channel
13. Password should not be stored in cookies
14. Test for Denial of Service attacks
15. Test for memory leakage
16. Test unauthorized application access by manipulating variable values in browser address bar
17. Test file extension handing so that exe files are not uploaded and executed on server
18. Sensitive fields like passwords and credit card information should not have auto complete enabled
19. File upload functionality should use file type restrictions and also anti-virus for scanning uploaded files
20. Check if directory listing is prohibited
21. Password and other sensitive fields should be masked while typing
22. Check if forgot password functionality is secured with features like temporary password expiry after specified hours and security question is asked before changing or requesting new password
23. Verify CAPTCHA functionality
24. Check if important events are logged in log files
25. Check if access privileges are implemented correctly
Penetration testing test cases – I’ve listed around 41 test cases for penetration testing on this page.
I ‘d really like to thank Devanshu Lavaniya (Sr. QA Engineer working for I-link Infosoft) for helping me to prepare this comprehensive testing checklist.
I’ve tried to cover all standard test scenarios for web and desktop application functionality. But still I know this is not a compete checklist. Testers on different projects have their own testing checklist based on their experience.
Please feel free to make this as a complete checklist by adding more test scenarios or negative test cases in below comments.
Also I’d appreciate if you’d share this with your friends!









97 comments ↓
Great list of scenarios, however I believe they wont work for all applications. But this can be a good basis for everybody to create their own check lists
@Boris – General, security, performance, GUI, DB tests should be applicable for almost all applications.
As mentioned in the assumptions, other tests are applicable for applications containing forms to save data in DB, file upload functionality, having popup windows, search and result pages, data export functionality etc.
Vijay, this is by far the most comprehensive test cases list I ever seen in any other online articles.
Thanks for compiling and sharing with us.
Thanks for such a effort, Very comphrensive
Very Very useful , looking forward for the next articles from u
Great work Vijay, definately this will help a lot for all.
very useful.. and helpful… a ery good effort done by u…
thanks…
kindly post a article on negative testing test case….
This is very good article post by you sir.
Please post the same on negative testing test case also.
thanks for such useful post for every tester…..
Very helpful and nicely prepared article for testers…..
Very comprehensive list, I’ll send it to my testers and developers.
Thanks,
Very nice article, and very useful.
Very valid point, to make the checklist, i am too early for them now, seems to be very important
This 1 superb , really its applicable on each and evry application . Thanks for making this type of comprehensive scenarios. Keep updating us by this new -new ideas , realy i like this website …
Very helpful and ready to use for testers. GREAT WORK.
Vijay- Nice work.
You have compiled a thorough testing checklist.
Thanks for sharing!
VERY USEFUL INFORMATION FOR FRESHERS TO FACE INTERVIEW QUESTIONS ON TEST CASES..
GOOD WORK…
THANKS ALOT..
Good information. Everyone should read this, mainly freshers.
Very helpful. Thank you so so much
Thank u…
Thanks for the test cases. I will definately be using them.
Very effective materiel for testing professionals…
Thanks a lot and awaiting for your next post on negative test cases
Awesome tips….
thank you everyone for your help!
it takes anywhere between 10 and 20 hours to complete these kind of articles. but this wouldn’t have been possible without your support, which inspires me to put in these efforts.
For those who are looking for more test scenarios specific to web applications please refer this article:
http://www.softwaretestinghelp.com/web-application-testing/
Thank you Vijay for giving such a comprehensive checklist.
Good Article, and Very Helpful
These are Good Abstracts (Head Lines
Very useful article, thank you!
its very helpful thank u…..
Simply awesome list. I would certainly recommend it to my testing team.
Nice list.
Hi,
These articles are very informative & useul. Thanks a lot. Can you please give more idea how to test live chat application.
Thanks
Very good Article
. All resource keys should be configurable in config files or database instead of hard coding..please explain??
Really a very good job done by you.. I had never seen such a extensive list
Thanks
Maheedhar
Awesome Document For Testers both for freshers and experienced, Thanks a lot.
Hi…
These articles are very informative & useful. and awaiting for your next post on negative test cases
Thanks
Lakshmi
Thanks for sharing such a comprehensive list of test cases, this will be really helpfull for all the testers.
Thank You so much for sharing , Do you have nay list for negative Tastings. This is Awesome.
Awesome this list more useful for all common Web and Window application
Very good work which will be helpful.
Hi there, this is very helpful. Are you able to provide some sample of test cases based on healthcare IT. Thank you.
Very good article…. Thanks.
Can anyone pls forward me sample test case document of any application.
yog2day@yahoo.co.in my mail id
Thanks a lot Vijayji, These scenarios are very useful while Testing application for software testing professional as well as a fresher while facing testing interview questions..
Thanks for sharing this article…
I am big fan of softwaretestinghelp.com
Thanks again…
Its really helpful.
Excellent article!!
Excellent article!!
Thanks for the checklist. Great work! A good starting point.
This is a good basic checklist but no where do you mention testing the functional purpose of the page. For example in Amazon, it could be to search for, select and buy a product, in people soft, it would be to import a contact from email, edit their details and save the entry. Checking the layout and the uniform behaviour of text fields is all very well and good but of you cannot carry out the functional purpose of the web page / app then it is of no use to no-one.
Great Work!!! very useful …
thank u..
great work , you posted a nice article for all the people who wants enter into the testing field thank you allot for sharing this information with us waiting for the upcoming articals…….
very good information.
simply ‘GREAT’.
Thank you !! I just want to notify that I have more than 2 years of experience in Software testing and all of these because of you Software Testing help!! Great work and nice article !!!
Thanks Vijay……..Can you provide information of QTP tool, at least trial version
good job. very helpful
This is excellent Vijay. You have made work a bit easier for us. I dont know, how much and when it will be possible, but would be excellent to have such detailed explanation for other areas like QTP, QC, etc.
Thanks again!!
Hi Vijay,
Am really thankful for providing detailed info.. as i joined small s/w company.. and am being so confused, what to do first, and how to test…
Thank u once again
very good sample test case template. Anyone wanting to take Software Testing to another level can buy exam papers @ ISEB-sofwaretesting.weebly.com
Very Useful Information Thanks…..
Sincere thanks to you guys !!
This is the Core of Manual Testing..Extremely helpful for every Tester/ QA guy !
if u have any test case templates then mail me and pls let me know what r the tools available in market as track versions i need to be install for automation testing
thank u **********
Hello Vijay ,
thank you for Great article , i have learned some new points from check list.
thnks for such articles, informative
Thanks for Sharing such a wonderful article. The contains are very good and scenarios are good described. Keep posting such articles. This is really helpful for the people related to Software Testing industry.
very useful topic for me..thanks boss…
impressive test cases. Thanks for sharing
Thankyou for this wonderful documentation.
Good one, every tester should learn this..
really it is a good work..
need complete tutorial on MonkeyTalk testing tool plz or give an link
Really a useful one.. looking for more post about s/w testing.
hi, Can anyone tell me, is there any tool available to test word applications.
sir, it is very knowlegable with easy language, it is so easy to understand all the test cases functionalities.it will definetly help me in making my project with gud n effective test cases..thanku so much sir..keep going ..all d best.
This is really helpful article for every tester. It reminds me the mistakes I made in the past. Thanks to the authors of the article.
I will keep this checklist handy while working on each project hereafter.
Thank a lot,i get lot of knowledge from this article,can you able to post web service test scenarios
Great work. Do you have sample test cases word document for testing
Really Amazing…. Awesome Checklist
i appreciate your work..
Thank you.. I’ve been writing test cases for new web site development for a few years.. started searching today for new, more comprehensive information on cases. This will be helpful.
thank you so much, very useful to us.
i cant able to understand this line..? could you help me plz to understand..?
“All resource keys should be configurable in config files or database instead of hard coding”
its good, tnks for sharing
Great article, well done. But someting I just wonder:
1) How to test memory leaks
2) Please tell me how I create a file with virus to test file attachment without spreading virus to my PC
3) Tester can not tell developer that they have to create audit tables in the databse. Audit requires in audit_log.
4) Tester can not require that table indexes are created.
Its amazing
everybody already typed so many things abt this article… no more words needed
it’s simply great work.
thank u so much, very useful to us…..!
Excellent job! Really an amazing research on test scenarios..Please continue your service. -Karthik,Bangalore
hello can any one help me how to write negative secnarios for a tab
Thanks, this is a very useful list, especially for projects that dont have a dedicated test team. I found a few I have missed so very useful.
many thanks
Thanks, this is a very useful list, especially for projects that dont have a dedicated test team. I found a few I have missed so very useful.
Very useful data to stable software…
Many thanks for your list, it helps us a lot
Very usefull thanks very much it helped me a lot for writting the test cases.
If you have any document related to it can you please send mail.
Thanks.
awesome ./…..is really useful to me 100%
good one
Leave a Comment