Challenges in Testing Web Based Applications
In this tutorial you will learn about Challenges in Testing Web Based Applications Introduction,
Why testing Web Applications is different? Factors effecting Testing of
Web Applications, Why technology platforms affect testing? Challenges
in Testing Web Based Web Applications.
Introduction:
Web
based Applications are increasingly becoming more feature rich,
important and also the most popular means for developing commercial
systems. Most companies opt for developing web based software wherever
possible. This helps in catering to large number of end users. The
deployment of the apps (once the infrastructure is in place) is fairly
easy.
The web based applications are powerful and have the
ability to provide feature rich content to a wide audience spread
across the globe at an economical cost.
Hence it is a daunting
task to test these applications and with more and more features testing
these apps is becoming even more complex.
In this article we will study the challenges faced when testing these applications
Why testing Web Applications is different?
Testing web applications is different because of many factors scenarios affecting the performance and user experience.
Web applications can typically cater to a large and a diverse audience. Web Applications can also be exposed to wide range of security threats. Web applications may open up illegal points of entry to the databases and other systems holding sensitive information.
To
ensure that the web application works reliably and correctly under
different situations these factors need to be accounted for and tested.
Hence a lot of effort needs to put in for Test Planning and Test Design.
Test
Cases should be written covering the different scenarios not only of
functional usage but also technical considerations such as Network speeds, Screen Resolution, etc.
For
example an application may work fine on Broad Band internet users but
may perform miserably for users with dial up internet connections.
Web Applications are known to give errors on slow networks, whereas they perform well on high speed connections.
Web pages don’t render correctly for certain situations but work okay with others.
Images may take longer to download for slower networks and the end user perception of the application may not be good.
Factors effecting Testing of Web Applications:
As mentioned above Web Applications can have a lot of variables affecting them such as:
- Numerous Application Usage (Entry – Exit) Paths are possible
Due
to the design and nature of the web applications it is possible that
different users follow different application usage paths.
For
example in an online banking application a user may directly go to
“Bill Pay” page and other users may check account balances, view
previous transactions and then “Pay the Bills”.
Generally a large number of usage paths are possible and all are supposed to work well.
All these Permutations and Combinations need to be tested thoroughly
- People with varying backgrounds & technical skills may use the application
Not
all applications are self explanatory to all people. People have
varying backgrounds and may find the application hard to use. For
instance a Business Intelligence application with “Drill-Down-Reports”
may work out for certain users but not for others.
Although this
affects the design of the applications, but these factors should be
tested in usability testing of the applications
- Intranet versus Internet based Applications
Intranet based applications generally cater to a controlled audience. The developers and architects
can make accurate assumptions about the people accessing the apps and
the hardware/software/technical specifications of the client machines.
While it may be difficult to make similar assumptions for Internet Based Applications
Also
the intranet users can generally access the app from ‘trusted’ sources
whereas for internet applications the users may need to be
authenticated and the security measures may have to be much more stringent.
Test Cases need to be designed to test the various scenarios and risks involved.
- The end users may use different types of browsers to access the app
Typically
for internet based applications users may have different Browsers when
accessing the apps. This aspect also needs to be tested. If we test the
app only on IE then we cannot ensure if works well on Netscape or
Fire-Fox. Because these browsers may not only render pages differently
but also have varying levels of support for client side scripting
languages such as java-script.
- Even on similar browsers
application may be rendered differently based on the Screen
resolution/Hardware/Software Configuration
- Network speeds:
Slow
Network speeds may cause the various components of a Webpage to be
downloaded with a time lag. This may cause errors to be thrown up.
The testing process needs to consider this as important factor specially for Internet based Applications
- ADA ( Americans with Disabilities Act)
It
may be required that the applications be compliant with ADA. Due
certain disabilities, some of the users may have difficulty in
accessing the Web Applications unless the applications are ADA
compliant. The Application may need to be tested for compliance and
usability
- Other Regulatory Compliance/Standards:
Depending
on the nature of the application and sensitivity of the data captured
the applications may have to be tested for relevant Compliance
Standards. This is more crucial for Web Based Applications because of
their possible exposure to a wide audience.
- Firewalls:
As
mentioned earlier Applications may behave differently across firewalls.
Applications may have certain web services or may operate on different
ports that may have been blocked. So the apps need to be tested for
these aspects as well.
- Security Aspects:
If the Application
captures certain personal or sensitive information, it may be crucial
to test the security strength of the application. Sufficient care need
to be taken that the security of the data is not compromised.
Why technology platforms affect testing?
Technology
platform upon which the Web Application was built also creates
different strengths and weaknesses. Different Test Automation tools
& packages are available for different Technology Platforms. This
can influence the Test Strategy and the way in which Test Execution is
done.
Challenges in Testing Web Based Web Applications:
To
ensure that sufficient Test Coverage is provided for Web Based
Applications and to provide a secure, reliable application to the user
the above factors need to be considered.
For internet based applications accessibility and security can be important issues.
On
one hand Organizations would like to cater to their users around the
world on the other hand they could end up exposing their security holes
all over.
Testing could be the last chance to ensure the safety of the data and the organization.
Summary:
In
this article we studied the various challenges in Testing Web Based
Applications. Why Testing Web based Applications is different and
different factors affecting the testing.
Edited by moderator - 04May2007 at 10:46pm