It is always not possible to follow proper testing such as writing Test Plan and writing Test cases.
In some cases we may need to go with adHoc Testing because of time constraint or resource constraint.
AdHoc Testing is the part of Exploratory testing.It is done without doing Planning and Documentation.
Adhoc testing will help to find the defects earlier. We know that earlier a defect is found the cheaper it is to fix it.
Here I am listing some tips for doing adhoc testing effectively.
- In case of UI (User Interface) testing, test all navigation including Back buttonnavigation.Go thro’ all the pages of the application to find any broken links and also make sure that each and every page is having proper links to reach other pages either directly or indirectly. And, notice the page loading time also. If it takes more time then try to narrow down whether it is due to network issue or web server issue or the page issue. i-e If the other domain webpages are loading normally then we can say that it is not due to network issue. And, if other pages in the same domain are loading normally then we can say that it is not related to server issue.
- Check whether all the images are having alt attribute. And anchor tags should have title attribute.
- See the application screen or webpage by changing/setting different screen resolution in your computer monitor.
- Test the webpage in many different web browsers such as Internet Explorer, FireFox, chrome, safari, etc.
- Test the tab order and default focus in all the pages. Especially study the behaviour of the application when it has more than one submit button.
- Try to enter/save test data having special characters such as single quotes, double quotes and comma .
- You can try to enter text with HTML tags such as < and > also in the textbox
- Try to load an authenticated webpage directly by entering url in the browser without doing login.
- Try all the possibilities of boundary values such as entering lot of data in textbox and entering negative values in numeric fields.
- Remember to navigate the application from two different machines/browsers simultaneously; especially concentrate on to test concurrent database saving/updating operation.
- If possible/necessary, test the application in different OS (Operating System) such as Windows, Linux and MAC.
- If your webpage uses flash files, try to see the behavior of your webpage when it is loaded in a machine which is not having flash player. Normally it should automatically download the flash plug-in.
- Instead of testing everything from your local machine, just try to test some screens by hosting your site in some remote machine. It will help to identify unexpected issues which may occur due to network latency.
- Test Session timeout, Cookie expiry and script execution timeout. For testing these things you should know about session and cookie. Session variables are stored in server side. They will be unique for each browser session. It will expire based on server setting. Cookie will be stored in user browser. It will expire based on the expiry time set while writing the cookie. But the user can manually also delete this cookie from the browser before it actually expires. Since user login status is mostly controlled using session and cookie variables, it is very important to test behavior of the system when the session or cookie expires.
- Try to refresh your confirmation screen many times to verify whether the multiple refresh saves/inserts the data multiple times.
- Test with different Date and Time format if you webpage/application has date and time entry fields. And, think about Time zone also.
- Make sure that Number/Currency/Name format is correctly displayed in all pages uniformly.
- When testing edit/modify/update feature, modify values of all fields and make sure that everything is getting updated correctly.
- Whenever testing Delete feature make sure that all the related data also getting deleted. For example, when deleting question and answers also will be deleted.And, make sure that necessary constraints are enforced correctly. For example, deletion of questions should not be allowed if the questions are already used in some other modules.