Nowadays Website Testing is necessary for any web application before making it live as numerous users visit the website. Along with satisfying the customers’ needs, product owners also aim for top-notch quality of the website in the market and value it brings to the business. This blog is about the general approach taken by the testing team during website testing.
What is Website Testing?
Web Testing is testing of a web-based system or application before it goes live. It involves testing the product on various browsers which may be installed versions or might require emulators. The aspects taken into consideration while carrying out website testing involve functional and non-functional areas, security of the application, usability and performance monitoring. A tester also needs to check the interface and compatibility of the application on various hardware and software systems.
Now, let’s have a look at these aspects in detail:
Adhere to Functional Requirements
Testing the application to ensure whether it is fulfilling all the requirements as per the SRS (Software Requirement Specification) or not. In this, different scenarios need to be tested:
- In the case of forms, validations must be shown as per the requirement.
- A tester must test the application for both positive and negative scenarios.
- The application must be tested end-to-end.
Provide Better User Experience
Usability testing is all about customer/end-user satisfaction of using the application. It depends on how much at ease the user feels while using the features offered by the application and the user should have a smooth user journey throughout. It is often done by using the features of the current release and comparing it to the previous releases (if any), and if the product is released for the first time then by comparing it with the already existing similar application/website(competitor product available in the market.)
Tools available: iPerceptions, Usabillia, UserFeel, etc.
Compatibility testing is used to verify that if the application is working correctly on different devices.Different devices could include testing the application in the same way in different browsers e.g. FireFox, Chrome, Internet Explorer, Edge, which can further include different version if required. This could also extend to different mobile devices on native and other browsers e.g. Safari for iPhones.
Tools available: Browserling, Browsershots, CrossBrowserTesting, etc.
Check Modular Interaction
Interface testing is used to test the interactions between the different components/modules. Testing the application that requests are sent correctly, handling the application’s request correctly at the server level and making sure that the result shown to the user has been correctly fetched from the database. All these should be tested in interface testing.
Performance testing is done to test how the application works under variant user load. There are different types of performance testing done. Some of them are listed below:
Load testing: It is used to check how the application/website performs when the demand is normal and under anticipated user load.
Stress testing: It is used to check the point where the application breaks by increasing the user load constantly.
Spike testing: It is used to check the response of application/website on the sudden increase of user load.
Tools available: Apache Jmeter, LoadRuner, Web LOAD, etc.
Security testing is done to check whether the application is secured or not. A website tester needs to keep an eye on security aspects such as transactions in case of e-commerce websites. It checks the application is vulnerable to attacks or not, for example,unauthorized access (by HTML injection and CSS vulnerability test).The application must not be affected by malicious data from outside world.
Tools available: Google Nogotofail, Vega, etc.
How is Mobile Web Testing Any Different?
These days mobile is handier than laptop or desktop for users. This is the primary reason why testing of a website should also be done on mobile devices. There are numerous devices available in the market; one can’t test on each and every single mobile device. Therefore, selection of device is a big concern here. This can be done by considering few points:
• Devices mentioned by the client
• Depending upon different OS
• Depending upon different screen resolution/size
Things that should be considered while testing on devices:
1.Seamless Integration: The main objective of mobile website testing is to deliver a consistent and relevant experience to users as provided in the desktop web.
2.Cross-device and Cross-browser Testing: Website should be tested on multiple browsers (Chrome, IE, FF, Safari,) and default/native browsers e.g. Safari for iOS, Chrome for new Android devices, IE for Windows devices, etc. It can be done on http://www.browserstack.com
3.Responsive: The only way to test the responsiveness of website is done by simply testing it on different devices, it can be done on actual devices or emulators.
For example http://www.responsinator.com/ , http://quirktools.com/screenfly/ , http://mobiletest.me/ etc.