Top Banner
http://w3.ibm.com/ibm/presentations Business Unit or Product Name © 2003 IBM Corporation IBM Confidenti al A Perspective on Web Testing Sivaprasanth Rentala [email protected] TPO,Pune,IGSI.
32

A perspective on web testing

Nov 01, 2014

Download

Education

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A perspective on web testing

Business Unit or Product Name

© 2003 IBM CorporationIBM Confidential

A Perspective on Web Testing

Sivaprasanth Rentala

[email protected]

TPO,Pune,IGSI.

Page 2: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Objective

The purpose of this presentation is to depict a perspective on Web

centric application testing. The document concentrates only on

describing importance of web testing, how to conduct web

testing and automation of web testing.

The importance of Web Testing is growing phenomenally as the

importance and implementation of Web applications is taking

place in a rapid speed in each and every company’s

applications.

Page 3: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Web application advantage

The foremost advantage of Web application is it reduces physical

distance between user and the application near to zero.

Web application can be accessed from anywhere and anytime by

anyone around the world.

E-COMMERCE applications like B2B, B2C and market places are

the most promising web application as E-COMMERCE is yet to

be part of life of the entire world

Hence the significance if Web Testing is growing tremendously.

Due to enormous growth in number of web applications the site

needs be not only user friendly but also reader friendly to attract

more users repeatedly.

Page 4: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

What is Web Testing?Web Testing is the process of testing

Web centric applications.

Web Testing goes beyond the basic

functional and system testing of the

client/server applications to include

tests for performance, usability and

compatibility etc.

Web Testing involves more

dimensions, less time, higher risks

and more exposure than client/server

applications. An optimal Web Testing

approach begins with a thorough risk

analysis of your application to

identify and prioritize key areas and

testing tasks.

Page 5: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

How Web Testing distinguish traditional Software Testing?

Software Testing was never easy.

But in Web arena the testing became more complex and

challenging.

Today the users of web applications are not only limited but also

users from all parts of the world.

With Web based applications the world is moved into the living

rooms.

Page 6: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Which distinguishes the web applications from Client-server applications. Performance due to concurrent users: More number of users access Web

application. The more the site is successful the more number of users will start using the site. Hence the application needs to increase the performance consistently. The speed should be the USP (Unique selling proposition) of the applications.

Compatibility:Users will use different types of computers, operating systems

and browsers to access the Web applications. Hence the application should be

compatible to the different types of platforms

Robustness :The web application needs to be robust to meet the expected

performance from different users, different platforms and from different places.

Continuous testing:Web applications needs continuous testing as more the

web site is successful the more users browse the site. Due to over load of usage

the performance problems may occur. Hence continuous testing is required

Security and user authentication: Security is the foremost criteria in E-Commerce related web applications as users provide personal information like credit card info, contact details so on.

Page 7: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

How to test Web applications?

Automated Vs Manual Testing

The automated testing is becoming more important and influential in the web application testing. While testing the web application the load testing, stress testing and performance testing cannot be done efficiently if we test manually. Manual testing cannot be possible to test the web site response time when 100 users access the site concurrently. An automated tool can test same scenario efficiently by simulating that more than 100 users accessing web site simultaneously.

But there is no automated testing tool, which supports 100% web testing. Web testing should be combination of manual and automated testing depending on the factors such as cost, possibility of automation, time factor to complete the test and so on. The combination of manual and automated testing should be optimized.

Page 8: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Here is the basic paradigm for GUI-based automated testing:

Design a test case, then run it.

If the program fails the test, write a bug report. Start over after

the bug is fixed.

If the program passes the test, automate it. Run the test again

(either from a script or with the aid of a capture utility). Capture

the screen output at the end of the test. Save the test case and

the output.

Next time, run the test case and compare its output to the

saved output. If the outputs match, the program passes the

test

Page 9: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Advantage of automated testing Defects are caught early in the development cycle before they

become costly.

Time can be spent extending test coverage rather than

repeating manual tests.

The skill level required to run tests is reduced.

Fixes are easier to verify because the scenarios that created

them are automated.

Full regression testing can be performed on each target

platform.

Metrics can be automatically gathered.

Page 10: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Following diagram explains the automated web testing process.

Page 11: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Web Testing Execution

This section briefs about different scenarios in Web Testing, a

brief description about each scenario and list of tools available

to test a particular scenario also mentioned.

Page 12: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

User Interface testing

User Interface testing includes verifying the Web user Interface with respect to UI specifications. UI includes forms; menus, navigation and different features like download option, help, site map, static pages, feedback etc. The testing should verify that the UI built is as per UI specifications.

 

Following tools are available UI testing

1.  Rational Robot

2. QA Partner by Segue Software and

3. Xrunner and WinRunner by Mercury Interactive.

Page 13: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

The functionality test should make sure that the application behaves as per design specifications.

The web components to be tested are: Java applets, forms, JavaScript, CGI scripts and databases that are contained within the web site. Develop positive and negative test cases; to ensure that web site responds in the way it is designed to.

Dead link testing, Navigation, HTML validation Spell check and Content check also can be part of Functionality testing.

Functionality

Page 14: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Following tools can be used for functionality test.1. Rational Suite TestStudio (Functionality testing)

2. Xenu Link Sleuth software (For Link testing)

3. http://www.w3c.org (For HTML validation)

4. SilkTest International (Functionality testing)

5. Compuware WebCheck –(Web test tool can check links, site mapping, orphaned URL's , missing attributes; scans for over 50 types of web site problems)

6. Doctor HTML (Site with online web page checker by Imagiware.

Checks spelling, forms, table structure, form structure, tag usage.

Validates links.)

Page 15: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Compatibility

Compatibility testing is necessary to ensure that the site performs

same and as intended across multiple operating systems and

different browser configurations.

This test is mandatory to make sure that all users who accesses

across different systems and browsers able to accesses the

site. Test should ensure Active X, Java, JavaScript, and CGI

scripts and different functions work same across the systems

and browsers.

Page 16: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Following are the minimal OS and browsers to be tested: Operation Systems:

Windows 95, 98, NT and 2000 and Mac OS 7.6.1 – 9, UNIX, Linux so on.

Browsers:

Web site to be tested from Netscape 3.0 - 6, IE 3.0 - 5.0, AOL 3.0 - 5.0, as well as other browsers for both Windows and Macintosh platforms.

Following testing tools can be used for Compatibility

1. VeriTest (Compatibility Testing)

Page 17: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Performance testing Performance testing of web sites required sophisticated automating tools

due to manual tests couldn’t simulate the testing conditions like hundreds of users are accessing site concurrently.

Performance testing is required to test the web application performance at the times when maximum expected users access the web site.

There are numerous situations when famous sites like www.msnbc.com, www cnn.com faced performance problems apart from their preparedness to meet the maximum traffic.

Predictable events like Olympic games or Football world cup where famous sites are flood with heavy traffic.

The web applications also needs to gear for some unpredictable events like Sept 11 2001 attack on WTC in New York. Many sites were down due unexpected users accessed the sites on Sept 11th.

Page 18: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

There are numerous situations1. When famous sites like www.msnbc.com, www cnn.com faced

performance problems apart from their preparedness to meet the maximum traffic.

2. Predictable events like Olympic games or Football world cup where famous sites are flood with heavy traffic.

3. The web applications also needs to gear for some unpredictable events like Sept 11 2001 attack on WTC in New York. Many sites were down due unexpected users accessed the sites on Sept 11th.

4. For example On 12 February 2002, MSNBC.com, NBCOlympics.com and Olympics.com handled as many as 260,000 concurrent users.

5. MSNBC and KeyLabs predicted and planned for heavy site traffic by using RadView WebLOAD application testing and analysis software. MSNBC normally handles 15 million pages of information per day but ran at 30 million to 40 million per day during the first week of the Olympics.

Page 19: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

The performance testing includes following testing Load testing: The Load testing determines the system performance at

maximum usage levels. The measure of transaction times during load testing is not as important how far a system can be pushed until it fails. Load testing is a matter of creating different scenarios to ensure proper performance. The purpose of this testing is to simulate thousands of users concurrently visiting and interacting with web site. Concurrent users, session timeouts, and average page response time are three of the most fundamental concepts in load testing.

Stress testing: Stress testing runs or stresses a web application under heavy loads for sustained periods Stress testing determines when the performance of a system degrades over a period of time

In U.S. companies lose approximately $58 million per month in E-commerce sales due to Web page loading failures

-<Zona Research>

Page 20: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Following tools can be used for load testing

1. Rational Suite TestStudio (Performance Load testing)

2. QALoad (Compuware's QALoad for load/stress testing of

database, web, and char-based systems)

3. Microsoft WCAT load test tool(Web load test tool from

Microsoft for load testing of MS IIS on NT)

4. SilkPerformer (Load and performance testing component of

Segue's Silk testing toolset)

5. Loadrunner (Load testing tool from Mercury; includes web load

testing capabilities)

6. WebLoad (Radview’s load and performance testing tool)

Page 21: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Security The security is very important psychological factor while retaining

or attracting more users to visit the site. Especially E-Commerce related applications should be geared for security. Security is required for users to protect the users confidential information like credit card information, address, contact information and so on. The site should be able to protect user confidential information from hackers or fraud or viruses. Security needs to be treated as a business level issue, which can be treated as very important feature of any E-Commerce application.

For additional security and encryption, check to see if the Secure Sockets Layer (SSL) protocol is being used.

Following tools can be used for security testing:

1. Entrust (Securing the Internet)

2. ActiveTest Secure Check (Security testing service for web applications)

Page 22: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Usability

For a large number of products, it is believed that the usability

becomes the final arbiter of quality. This is true for a large

number of desktop applications that gained market share

through providing a good user experience. Usability testing

needs to not only assess how usable a product is but also

provide feedback on methods to improve the user experience

and thereby gain a positive quality image. The best practice for

usability testing should also have knowledge about advances in

the area of Human Computer Interface.

Page 23: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Error handling testing

1. Error handling strategy to be tested thoroughly as the end user should not feel uneasy due to the error message displayed while browsing the site or submitting a web form if any error occurs. The error message and the way message displayed should be user friendly.

2. The error message should be meaningful and appropriate.

Page 24: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Network testing

Tests need to be run to ensure that a site is network able and can

run on several network OS environments. Also stress tests is

needed to ensure that a minimum number of users can use an

application at one time

Page 25: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

White box testing Vs Black box testing. The manual testing can be done in following well-known software

testing techniques. Manual testing can be done wherever web test automation is not possible or feasible. 

1.1         White box testing  

Use White box testing to test the site's construction. White box testing in software development involves exercising all possible paths. In Web development, this involves testing every static and dynamic page for coding errors and link errors. Performing white-box testing on dynamic Web sites requires creating an instance of every static and dynamic site page. 

1.2         Black Box testing

 Black box testing can be used to test the site's functionality. Black box testing helps ensure that a program performs the way it was expected to function. In dynamic Web sites, the states of pages are constantly changing depending on how user visits a site.

Page 26: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Analysis of web testing results

Many of the automated web tools provide test results in different

forms of presentations. The analysis of these results is very

important in improving the web site performance by

understanding the areas of improvement. There are lots of

options available to improve the performance if problem domain

area is identified. Hence the web test result analysis is foremost

important activity to improve the web site popularity.

Page 27: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Tips for Web testing

The figures below represent total page size, including both text and graphics:

1. The 0-10K range qualifies as exemplary

2. Pages between 10-20K rate as well-optimized

3. The 20-40K range is merely adequate

4. 40-60K pages earn a dubious designator

5. Anything over 60K is unacceptable

Page 28: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

What should be the optimal Download time? Download Time = 0.1 Second-When a Website (or anything, for that matter) operates as quickly as this, it appears to happen instantly to the user. Such loading times are not likely on the Web due to bandwidth constraints.

    Download Time = 1 Second-If the site operates this quickly, the user won't have a chance to focus their attention somewhere else. The'll generally be engaged with what happens on your site because of the speed. Again, this time is also unlikely, however it's not impossible.

     Download Time = <15 Seconds-This amount of time is accepted to be the threshold for keeping the user's attention focused. Feedback showing that progress is being made should be provided to the user, which is often best achieved by using interlaced images, however the browser progress bar may be sufficient.

      Download Time - >15 Seconds -Over 15 seconds is considered to be too long to keep the user's attention focused, and they're likely to lose interest and do other things (e.g. use other Internet sites, check their email etc.) while waiting for your site to download. Or they may simply leave your site for another.

 

Page 29: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Web testing checklist

Following checklist is useful for web testing

.A perspective on Web Testing\Web Testing Checklist.doc

Page 30: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Vendors Of Web Testing tools

Following are the list of renowned companies famous in supplying

Web Testing tools.

..\A perspective on Web Testing\Vendors Of Web Testing

tools.doc

 

Page 31: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

Conclusion

Website testing is a very important part of web site development and sub sequent maintenance. Whether it be an assessment completed during development, or the analysis of your impact on the audience after you've launched the site, testing is vital. It can save any good Websites from failing to satisfy their visitors.

Page 32: A perspective on web testing

Business Unit or Product Name

© 200 3 IBM Corporation

IBM Confidential

References

What should a Test to be automated? By Brain Marick for Quality

week magazine.

WebSite testing by Edward Miller of Software Research inc.