Web Applications Testing:
Web testing – these days most applications are on the web. What makes web testing a challenge is the combination of Browsers, Operating Systems, screen resolutions, network or modem speeds. Add mobile phones to this cauldron and we can see why it gets a bit mind-boggling!
The most important factors that need consideration are following:
Hardware platforms: Windows, Linux, Mac – Microsoft is still king here!
Browsers: different Browsers and their versions – Chrome, Safari, IE.
Screen Resolution: The resolution of the monitor which affects how the page will be displayed. Eg: 1920×1080, 1366×768, 1280×1024, 1280×800, 1024×768, 800×600
So before commencing testing, the machine configuration, screen resolution, OS etc are first to be decided and prioritized. These details will be documented in the System Test Plan as part of the scope of testing.
System Testing web applications will typically involve:
- Installation on Server side(optional, there might be a team to take care of this else the System Testing team would test this)
- Web Page look and feel (Page Title, Fonts, Colours, Tab Order etc)
- Navigation – hyperlinks, menus, hotspots or logos, Bback, Forward etc, keyboard short-cuts
- Functional tests – different users, scenarios, process flows, database updated correctly, reports etc
- Performance – Response time, memory, cpu usage, memory leaks over time, performance degradation over timeetc
- Localization testing in different languages
The following serve as good pointers during web testing:
1. Identify the static and dynamic content:
During System testing, you may need to verify how the dynamic content appears, talk to the Developers for details.
Identify the ways a user can navigate through the web page viz Hyperlinks, Menus, hotspots. During Testing, include tests for all the 3 ways of navigating the website.
3. Proxy Servers, Firewalls:
During System testing, the Proxy server settings may need to be adjusted to display the page.
And on rare occasions, Firewall setting adjusted with the help of the System Admin, for certain testing, a Port may be opened etc.
4. Anti-virus software that might sometime interfere with the display of the page:
Some Anti-virus software may block or make a website slow. Something to bear in mind during testing, that clashes could occur with the Anti-virus program (don’t turn it off but inform the Developers ).
5. HTTPS pages:
For HTTPS pages, certificates might need to be checked
6. Cookies – Session and Persistent:
During System Testing, enable and disable cookies and check the website behaviour.
- Delete cookies and begin testing – so login credentials etc should be asked.
- Checking session cookies are deleted when cache is cleared and when the browser is closed
- Checking persistent cookies are automatically deleted when they reach their expiry or manually cleared.
During System Testing, you will test with both clearing and retaining cache.
8. Testing the webpage with keyboard short-cuts:
During System testing, use the keyboard keys to test the pages, like going Back, Forward, Print, Esc etc.
9. Session Timeout:
On banking websites, we get the message “your session has expired”, if we are idle for a few minutes.
During system testing of e-commerce sites, it is necessary to check this.
10. Different Tabs and Windows:
Open the application, login, open the same application in another tab, another new browser window. Check how the information is displayed. Also when you logout of one tab, can you access the application in the other windows/tabs or are you prompted for login?
11.ActiveX controls(IE) & Plug-ins(Chrome):
During System Testing, enable and disable Active X controls on IE and plug-ins on other browsers.
12. Java version errors:
Some applications may use Java and Java applets and the version of Java might be important in this case.
http://www.w3schools.com/browsers/ has lots of interesting data on Browsers.