7 STEPS TO SMOOTH WEB APPLICATION TESTING
By: Arine Baghdasaryan
Tags: QA, Web Application Testing, Software Testing, Quality Assurance, Software Development

Many testers know cases of incomplete testing of sites, which almost always leads to considerable financial costs, customer dissatisfaction, and, ultimately, to redeveloping of the whole web application.

To organize proper testing of a web resource, we recommend you to adhere to a special methodology.

Do not forget there are a number of nuances associated with the social and technological features of web applications that distinguish them from other types of applications, and which must be taken into account when testing in order to perform it professionally.

a fantastic variety of technologies that hide behind a simple browser facade — virtually every web application is not a standalone program, but part of the world wide web and a lot of heterogeneous components are involved in the work of a web application

the incredible speed of web development in both narrow and in a broad sense — short releases, rapidly changing requirements, the continuous improvement of existing technologies and the emergence of new ones

a tremendous variety of users, from casual visitors to regular customers, from babies to old people, from beginners to hackers

full openness of technologies, data transfer protocols, standards, and at the same time the need for particularly careful protection, taking into account what was written in the previous paragraph

So, what steps should be done in order successfully to test a web application?

Step #1

The preparatory phase of web application testing

A Tester prepares Test Plan based on the Documentation and Requirement Analysis.

Step #2

Functional testing

The most time-consuming part of Web Application Testing. At this stage, all the functional requirements of the software, the work of the links, the search for non-working hyperlinks are tested. There is a check of uploading files to the server, the work of the counters on the portal pages, user forms (for example, contacts, feedback, subscription, adding messages, etc.). Checks whether the content of the site pages corresponds to the source code.

During the functional testing, an imitation of the actual use of the system occurs. The purpose of this type of testing is to get as close as possible to the real use of the application and create conditions that are close to the user’s requirements.

Step #3

Usability testing

In other words, the degree of user experience with the software product. Usability testing is based on attracting users as testers; all results and opinions are analyzed.

Usability testing involves the following steps:

running the test under the supervision of experienced QA Engineers,

development of a test strategy that regulates the verification of all functions of a web application,

selection of test participants both within the company and from outside,

analysis of the results and improvement of the web application.

Step#4

Interface Testing

Testing the interface ensures that all interactions between the web server and the user interface are reproduced as required. It also checks the correctness of displaying error messages.

When testing interface we check also:

the location of the elements, whether they correspond to their layouts;

graphics optimization;

code validity;

cross-browser compatibility (how the website works in various browsers).

Step#5

Security testing

At this stage, the tester checks the protection of all closed pages.

We always start by creating a matrix of access levels;

Confidentiality — no one can access the data unauthorized; Data integrity:

a) the ability to recover data in full when it is damaged;

b) access to change information only a certain category of users.

Step#6

Performance Testing

The task is to determine the speed of the site at a given load and whether a web page can handle the heavy load on any specific page.

simulate the load users (JMeter);

try to download large amounts of data, files, media;

load a Data Base;

lower the speed of an Internet (NetLimiter);

lower the data transfer rate (Throttling);

test system recovery after falls.

Step#7

“Work on mistakes”

The tester provides a report on errors found to developers. A troubleshooting schedule is drawn up and re-tested.