Professional Documents
Culture Documents
each component functions correctly and ensuring that the content of each is correct.
6. Configuration and Compatibility testing
A key challenge for web applications is ensuring that the user sees a web page as the
designer intended. The user can select different browser software and browser options,
use different network software and on-line service, and run other concurrent applications.
We execute the application under every browser/platform combination to ensure the web
sites work properly under various environments.
7. Reliability and Availability Testing
A key requirement o a website is that it Be available whenever the user requests it, after
24-hours a day, every day. The number of users accessing web site simultaneously may
also affect the site's availability.
8. Performance Testing
Performance Testing, which evaluates System performance under normal and heavy
usage, is crucial to success of any web application. A system that takes for long to
respond may frustrate the user who can then quickly move to a competitor's site. Given
enough time, every page request will eventually be delivered. Performance testing seeks
to ensure that the website server responds to browser requests within defined
parameters.
9. Load Testing
The purpose of Load testing is to model real world experiences, typically by generating
many simultaneous users accessing the website. We use automation tools to increases
the ability to conduct a valid load test, because it emulates thousand of users by sending
simultaneous requests to the application or the server.
10. Stress Testing
Stress Testing consists of subjecting the system to varying and maximum loads to
evaluate the resulting performance. We use automated test tools to simulate loads on
website and execute the tests continuously for several hours or days.
11. Security Testing
Security is a primary concern when communicating and conducting business- especially
sensitive and business- critical transactions - over the internet. The user wants assurance
that personal and financial information is secure. Finding the vulnerabilities in an
application that would grant an unauthorized user access to the system is important.
Outgoing links
Internal links
Anchor Links
MailTo Links
Scripting checks on the form are working as expected. For example- if a user does
not fill a mandatory field in a form an error message is shown.
Once submitted , the data in the forms is submitted to a live database or is linked
to an working email address
primarily remember active user sessions so you do not need to log in every time you visit
a website. Cookie Testing will include
Testing cookies (sessions) are deleted either when cache is cleared or when they
reach their expiry.
Delete cookies (sessions) and test that login credentials are asked for when you
next visit the site.
Test HTML and CSS to ensure that search engines can crawl your site easily. This will
include
Testing your end - to - end workflow/ business scenarios which takes the user
through a series of webpage's to complete.
Test negative scenarios as well , such that when a user executes an unexpected
step , appropriate error message or help is shown in your web application.
Menus , buttons or Links to different pages on your site should be easily visible
and consistent on all webpages
Tools that can be used: Chalkmark, Clicktale, Clixpy and Feedback Army
3.Interface Testing:
Three areas to be tested here are - Application , Web and Database Server
Application: Test requests are sent correctly to the Database and output at the
client side is displayed correctly. Errors if any must be caught by the application and
must be only shown to the administrator and not the end user.
Web Server: Test Web server is handling all application requests without any
service denial.
Database Server: Make sure queries sent to the database give expected results.
Test system response when connection between the three layers (Application,
Web and Database) can not be established and appropriate message is shown to the
end user.
Tools that can be used: AlertFox,Ranorex
4.Database Testing:
Database is one critical component of your web application and stress must be laid to
test it thoroughly. Testing activities will include
Test data retrieved from your database is shown accurately in your web
application
5. Compatibility testing.
Compatibility tests ensures that your web application displays correctly across different
devices. This would includeBrowser Compatibility Test: Same website in different browsers will display differently.
You need to test if your web application is being displayed correctly across
browsers , javascript , AJAX and authentication is working fine. You may also check
for Mobile Browser Compatibility.
The rendering of web elements like buttons , text fields etc changes with change
in Operating System. Make sure your website works fine for various combination of
Operating systems such as Windows , Linux , Mac and Browsers such as Firefox , Internet
Explorer , Safari etc.
Tools that can be used: NetMechanic
6.Performance Testing:
This will ensure your site works under all loads. Testing activities will include but not
limited to -
Load test your web application to determine its behavior under normal and peak
loads
Stress test your web site to determine its break point when pushed to beyond
normal loads at peak time.
Test if a crash occurs due to peak load , how does the site recover from such an
event
Make sure optimization techniques like gzip compression , browser and server
side cache enabled to reduce load times
article will help you to learn basic of web testing. Before start testing web site its
very important to know about which all testing methods needs to cover.
Prior to see more details on web application testing, first lets see the definition of the
Web Testing.
What is Web Testing?
Web testing is the name given to Software Testing that focuses on testing the web
applications. In Web-based application is completely tested before going production
environment. This could help to address the issues in web application before exposed to
public like the Functional issues, web application security, web services issues,
integrations issues, environment issues and its ability to handle traffic is checked. In this
stage of Web Testing making effort to find out the possible bugs in the system.
Web Application Testing Checklist:
Let see what all testing is to be carried out on in software web testing. The testing is
totally based on your web testing requirements but following is the standard checklist of
web testing:
Web Testing
1. Functionality Testing:
In Functional testing we need check the each components are functioning as expected or
not, so it is also called as Component Testing. Functional testing is to testing the
functionality of the software application under test. Basically, it is to check the basic
functionality mentioned in the functional specification document. Also check whether
software application is meeting the user expectations. We can also say that checking the
behavior of the software application against test specification.
Internal links
Outgoing links
MailTo Links
Anchor Links
First thing to test in the form is the Validations on each form fields. Here two types
of Validation need to be consider Client side & Server side validations.
Check for all Mandatory fields. Check if a user not entered a required field
showing a mandatory error message.
Tab orders.
Cookies testing:
Cookies are the small text file that gets saved the users system. These files are saved in
the desired location and used by the browsers to use the cookies. Basically used to
maintain the session mainly login sessions the Cookies are used. Instructive information
is recorded in the cookie (like Sessions) and that can be retrieved for the web pages.
User can able to enable or disable the Cookies in browser options. The basic test to check
if cookie is stored in the users machine in the encrypted format. (I am writing separate
article on Cookie Testing, post it soon)
So lets see what should be tested in Cookies testing:
Check the behavior of application after removing the all the cookies for the
website you are testing.
2. Usability testing:
Now a days the Usability testing is playing an important role of any web application. This
testing is to be carried out by testers like you to ensure that cover all possible test cases
which targeted audience of the web application are doing regularly.
This would include
Navigation testing of the web site:
All possible options like Menus, Links or buttons on web pages should be visible &
accessible from all the web pages.
Help instruction content should be clear & should satisfy the purpose.
No broken images
Dark color infuriates the users, so avoid using dark colors in the theme.
3. Compatibility testing.
In software application testing the Compatibility testing is the non-functional part of
testing. It is ensuring that how applications working in the supported environments.
Customers are uses web application on different Operating systems, Browser
compatibility, computing capacity of Hardware Platform, Databases and Bandwidth
handling capacity of networking hardware. The Compatibility testing is to make sure that
Is web application show correctly across different devices?
This would includeBrowser Compatibility Test:
Web applications are rendering differently on different browsers. The objective of browser
compatibility testing is to ensure that no any errors on the different web browsers while
rendering the sites. In Browser Compatibility Testing you need to ensure that your web
application is being displayed properly on different browsers. Also check AJAX, JavaScript
and authentication are functioning correctly.
OS compatibility:
In new technology newer graphics designs are used & different APIs are used which may
not work on different Operating systems. Also on rendering of different objects like text
fields, buttons may display different on different Operating System. So testing of web
application should be carried out on different OS like Windows, MAC, Solaris, Unix, Linux
with different OS flavors.
Mobile browsing:
In latest Mobi technology you also test out Mobile Browser Compatibility too. It may be
possible of Compatibility issues on Mobile browsers. So in the new Mobi technology age
you testing of web pages on mobile browsers should be carried out.
4. Database Testing:
Data reliability is key part in the Database testing. So for web application should be
thoroughly tested.
Testing activities would include
Creating, updating or deleting data in database should maintain the data integrity.
More time should not take to execute the queries, if required tune the queries for
better performance.
Check load on database while executing heavier queries & check the result.
Collect data from database & represent on the web pages correctly.
5. Crowd Testing:
Crowd testing is when a large group of perfect strangers try your product then give you
phenomenally helpful feedback on usability, bugs and features.
To test the software application Crowd testing can be used. It not limited to web
applications, but for all kinds of applications including mobile application testing.
Crowdtesting is dependent on the quality of the crowd. Also it depends on a crowd that is
composed out of a large group of divers people. It used do system tests for performance
and usability testing. Simply this is complementary to normal testing. The mainly
complicated job of crowd testing is determining a good enough crowd.
6. Interface Testing:
In the Interface testing mainly three areas should be covered: Web Server, Application
Server and Database Server. Ensure that all the communications between these all
servers should be carried out correctly. Verify that if connection between any servers is
reset or lost then what is happing. Check if any request interrupts in-between then how
application is responding. On returns of any error from web server or database server to
application server then error should be Errors are handled properly & display such errors
to the user.
Web Server: Check if all web requests are accepting and not any requests are
denied or leakages.
Application Server: Check if request is sending correctly to the any server &
displayed correctly. Check if errors are catch properly & displayed to admin user.
Check if all three servers are connected to each & test request is processing correctly.
And any error in between then error should be displayed to user.
7. Performance Testing:
Performance testing is to check the web application is working under the heavy load.
Performance testing is categorized into two parts:
Web Stress Testing, Web Load Testing
This would include
Check if how your web application sustain under the peak loads
Check if how the web site pulls through if crash occurs due to peak load.
8. Security testing:
The security testing is carried out to ensure that is any information leakage in terms of
encrypting the data. In e-commerce website the Security testing is play an important
role. In this testing check if secure information is to check whether how to store sensitive
information such as credit cards etc.
Testing Activities will include
Check if internal Web directories or files are not accessible unless & until not
configured for download.
Check if CAPTCHA is added & working properly for logins to prevents automates
logins attempts.
Check if sessions are got expired after pre-defined amount of time if user not
using session.
Check if user not able to pass login page for invalid username/password
combination.
Software industry has achieved a solid recognition in this age. In this article you should
have clear idea on web application testing with web testing test cases.
Obviously these checklists have its own advantages and disadvantages. And the
selection criteria are totally based on your requirements of software web testing. Apart
from that we also discussed current trends followed by IT industries on Web application
testing.
In my previous post I have outlined points to be considered whiletesting web
applications. Here we will see some more details on web application testing with
web testing test cases. Let me tell you one thing that I always like to share practical
knowledge, which can be useful to users in their career life. This is a quite long article so
sit back and get relaxed to get most out of it.
Lets have first web testing checklist.
1) Functionality Testing
2) Usability testing
3) Interface testing
4) Compatibility testing
5) Performance testing
6) Security testing
1) Functionality Testing:
Test for all the links in web pages, database connection, forms used in the web pages
for submitting or getting information from user, Cookie testing.
Check all the links:
Test the outgoing links from all the pages from specific domain under test.
Test all internal links.
Test links jumping on the same pages.
Test links used to send the email to admin or other users from web pages.
Test to check if there are any orphan pages.
Lastly in link checking, check for broken links in all above-mentioned links.
These are some basic standards that should be followed in web development. Your task is
to validate all for UI testing
Other user information for user help:
Like search option, sitemap, help files etc. Sitemap should be present with all the links in
web sites with proper tree view of navigation. Check for all links on the sitemap.
Search in the site option will help users to find content pages they are looking for easily
and quickly. These are all optional items and if present should be validated.
3) Interface Testing:
The main interfaces are:
Web server and application server interface
Application server and Database server interface.
Check if all the interactions between these servers are executed properly. Errors are
handled properly. If database or web server returns any error message for any query by
application server then application server should catch and display these error messages
appropriately to users. Check what happens if user interrupts any transaction inbetween? Check what happens if connection to web server is reset in between?
4) Compatibility Testing:
Compatibility of your web site is very important testing aspect. See which compatibility
test to be executed:
-----------
Browser compatibility
Operating system compatibility
Mobile browsing
Printing options
Browser compatibility:
In my web-testing career I have experienced this as most influencing part on web site
testing.
Some applications are very dependent on browsers. Different browsers have different
configurations and settings that your web page should be compatible with. Your web site
coding should be cross browser platform compatible. If you are using java scripts or AJAX
calls for UI functionality, performing security checks or validations then give more stress
on browser compatibility testing of your web application.
Test web application on different browsers like Internet explorer, Firefox, Netscape
navigator, AOL, Safari, Opera browsers with different versions.
OS compatibility:
Some functionality in your web application is may not be compatible with all operating
systems. All new technologies used in web development like graphics designs, interface
calls like different APIs may not be available in all Operating Systems.
Test your web application on different operating systems like Windows, Unix, MAC, Linux,
Solaris with different OS flavors.
Mobile browsing:
This is new technology age. So in future Mobile browsing will rock. Test your web pages
on mobile browsers. Compatibility issues may be there on mobile.
Printing options:
If you are giving page-printing options then make sure fonts, page alignment, page
graphics getting printed properly. Pages should be fit to paper size or as per the size
mentioned in printing option.
5) Performance testing:
Web application should sustain to heavy load. Web performance testing should include:
Web Load Testing
Web Stress Testing
Test application performance on different internet connection speed.
In web load testing test if many users are accessing or requesting the same page. Can
system sustain in peak load times? Site should handle many simultaneous user requests,
large input data from users, Simultaneous connection to DB, heavy load on specific
pages etc.
Stress testing: Generally stress means stretching the system beyond its specification
limits. Web stress testing is performed to break the site by giving stress and checked how
system reacts to stress and how system recovers from crashes.
Stress is generally given on input fields, login and sign up areas.
In web performance testing web site functionality on different operating systems,
different hardware platforms is checked for software, hardware memory leakage errors,
6) Security Testing:
Following are some test cases for web security testing:
Test by pasting internal url directly into browser address bar without login. Internal
then try changing url options directly. I.e. If you are checking some publisher site
statistics with publisher site ID= 123. Try directly changing the url site ID
parameter to different site ID which is not related to logged in user. Access should
denied for this user to view others stats.
Try some invalid inputs in input fields like login username, password, input text
option.
Test the CAPTCHA for automates scripts logins.
Test if SSL is used for security measures. If used proper message should get
displayed when user switch from non-secure http:// pages to secure https:// pages
and vice versa.
All transactions, error messages, security breach attempts should get logged in
Functionality problems
OS compatibility problems
Navigation problem
Check the form with invalid data which violate the validations of fields in the form.
Q4. While testing a website, which are the different configurations which will have to be
considered?
These configurations may demand for change in strategy of the webpage. The most
important factors that need consideration are following:
Hardware platform: some user may use the Mac platform, some may use Linux,
while others may use Microsoft platform.
Browsers: browser and their versions also change the layout of the web page.
Along with the browser versions, the different Plug-Ins also has to be taken into
consideration. The resolution of the monitor also with color depth and text size is
some of the other configurations.
Q5. What is the difference between authentication and authorization in web testing?
The differences between authentication and authorization are:
Authentication is the process with which the system identifies the user whereas
authorization is the process after the authentication process
The authentication is used to ensure that the user is indeed a user, who he claims
to be whereas in authorization system will decide whether a particular task can be
performed by the user
There are different types of authentications, which can be used like password
based authentication, device based authentication whereas in authorization there
are two types read only, and read write both.
HTTP use port number 80 whereas HTTPS use port number 443
HTTP can support the client asking for a particular file to be sent only if it has
been updated after a certain date and time whereas Hypertext Transfer Protocol
over Secure Socket Layer is built into its browser that encrypts and decrypts user
page requests as well as the pages that are returned by the Web server
Q7. What is the difference between the static and dynamic website?
The differences between Static and Dynamic website are following:
A static website contains Web pages with fixed content where as in Dynamic web
site content of the web page change with respect to time.
Static website are easy to create and donot require any database design but in
case of dynamic website it require good knowledge to develop the website with
programming and database knowledge.
In static website user cannot communicate with other and same information will
be displayed to each user where as in dynamic website user may communicate
with each other.
Q8. How do you perform testing on web based application using QTP?
We can do the performance testing using QTP by adding the web add-in in the QTP at the
startup of the QTP. Now to make URL of the website available to the QTP we have to type
the URL of the site. So that while running QTP will open the application and do the testing
Q11. What are steps you will perform for securing a new web server?
Some of the important steps to be carried out for securing the web server are following:
Minimize rights.
Update permissions.
Regular backup.
Learnability is how easy it is for a new user to accomplish tasks the first time they
visit your website.
Memorability is how easy it is for someone to come back to using your website
after they havent used it for a period of time.
Efficiency is how quickly users can complete tasks on your site after they are
familiar with its use.
Q13. What is difference between web based testing and windows based testing?
Web based testing is concern with the following:
Functionality
Intergration
Usability.
Functional Issues
Performance issues - How time it takes to display the page to the user.
Load - How much load an application can handle at any point in time.
If proper static information is not displayed along with text fields to enter data.
Links are broken, default focus is not set in forms, tab key not working, all key
board short cuts are not fully functional
Q15. What is the difference b/w desktop application testing and web testing?
Desktop Testing: Desktop application testing is standalone testing, it is independent of
the other application which are executing on the different machines. In this application
testing, tester need not worry about number of user.
Web testing Web testing is related to client server. Web testing needs to have many
testings like Usability, GUI, Load Testing, Performance Testing.
Q16. What is field validation in web testing?
Field validation is used to ensure that only correct data is entered into the field. We can
select validation options to make sure that only correct format data can be entered into a
field correctly. When validation options are selected, we can use the FileMaker Pro to
displays a message when user enter data in incorrectly format. For example, you can set
an option to require that users enter a value in a field. The field validations check the
format of the data. To ensure this we perform the validation testing in the website. Like
the email field must contain the data in email@domain.com format
Q17. What is focus testing in website?
Focus testing is used to test that when we open a webpage the cursor automatically blink
on the particular field. Like in the case of Gmail login page. When we open the Gmail
login page the cursor automatically blinks on the username filed. This is the Focus testing
in website.
Q18.Explain some web testing tools.
Some of the webs testing tools are discussed below: