2. RELATIONAL WORK. Volume 2, Issue 5, May 2013 Page 67



Similar documents
Introduction site management software

How To Test A Web Based System

LOAD TESTING OF WEBSITE

Testing a Website: Best Practices. Glenn A. Stout, Ph.D. glennstout@gmail.com (STOUT)

Web Testing: Tool, Challenges and Methods

Test Run Analysis Interpretation (AI) Made Easy with OpenLoad

Chapter 5. Regression Testing of Web-Components

Performance Testing Process A Whitepaper

Levels of Software Testing. Functional Testing

SiteCelerate white paper

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

Performance Testing Tools: A Comparative Analysis

Charu Babbar 1, Neha Bajpai 2 and Dipti Kapoor Sarmah 3

High Level Design Distributed Network Traffic Controller

CHAPTER 20 TESING WEB APPLICATIONS. Overview

Concepts. Help Documentation

WHAT WE NEED TO START THE PERFORMANCE TESTING?

Checklist for Web Application Testing

Topics in Website Testing. [Reading assignment: Chapter 14, pp ]

BUSINESS IMPACT OF POOR WEB PERFORMANCE

Business Application Services Testing

How To Test For Elulla

WebSite Testing. Edward Miller Software Research, Inc. 901 Minnesota Street San Francisco, CA USA. Copyright 2000 by Software Research, Inc.

Last Updated: July STATISTICA Enterprise Server Security

Please Note: Temporary Graduate 485 skills assessments applicants should only apply for ANZSCO codes listed in the Skilled Occupation List above.

Software Requirements Specification VODKA. for. Version 1.1 Approved April 24, 2007

Software Requirements Specification

Social Network Website to Monitor Behavior Change Design Document

How to Plan a Successful Load Testing Programme for today s websites

How To Test For Performance

Performance Testing. Slow data transfer rate may be inherent in hardware but can also result from software-related problems, such as:

Web Hosting Features. Small Office Premium. Small Office. Basic Premium. Enterprise. Basic. General

1 How to Monitor Performance

SuperAgent and Siebel

Bringing Value to the Organization with Performance Testing

Deploying the BIG-IP System with Oracle E-Business Suite 11i

Testing Web Applications. Software Engineering: A Practitionerʼs Approach, 7/e by Roger S. Pressman

NETWORK DESIGN BY USING OPNET IT GURU ACADEMIC EDITION SOFTWARE

Load Testing on Web Application using Automated Testing Tool: Load Complete

Manual. Netumo NETUMO HELP MANUAL Copyright Netumo 2014 All Rights Reserved

Run your own Oracle Database Benchmarks with Hammerora

Outline. CIW Web Design Specialist. Course Content

International Journal of Engineering Technology, Management and Applied Sciences. November 2014, Volume 2 Issue 6, ISSN

Google Analytics for Robust Website Analytics. Deepika Verma, Depanwita Seal, Atul Pandey

Web Hosting. Definition. Overview. Topics. 1. Overview of the Web

Software as a Service (SaaS) Testing Challenges- An Indepth

1. Introduction. 2. Web Application. 3. Components. 4. Common Vulnerabilities. 5. Improving security in Web applications

E-commerce. Web Servers Hardware and Software

MIGRATING SHAREPOINT TO THE CLOUD

Table of Contents INTRODUCTION Prerequisites... 3 Audience... 3 Report Metrics... 3

NovaBACKUP xsp Version 15.0 Upgrade Guide

Chapter 3. Outline the hardware and software technologies used to build an e business. its partners. access to the Internet and hosting of

Vector Asset Management User Manual

A Survey on Web Mining From Web Server Log

Comparative Study of Load Testing Tools

RemotelyAnywhere Getting Started Guide

System Architecture V3.2. Last Update: August 2015

A Tool for Evaluation and Optimization of Web Application Performance

How To Test A Web Server

WiNG5 CAPTIVE PORTAL DESIGN GUIDE

Digital media glossary

Load/Performance Test Plan

FileMaker Server 7. Administrator s Guide. For Windows and Mac OS

The following multiple-choice post-course assessment will evaluate your knowledge of the skills and concepts taught in Internet Business Associate.

FileMaker Server 11. FileMaker Server Help

WALKME WHITEPAPER. WalkMe Architecture

Annex E - Capability Building Policy

Network Management and Monitoring Software

IBM RATIONAL PERFORMANCE TESTER

Increasing Traffic to Your Website Through Search Engine Optimization (SEO) Techniques

From Desktop to Browser Platform: Office Application Suite with Ajax

A CLIENT-ORIENTATED DYNAMIC WEB SERVER. Cristina Hava Muntean, Jennifer McManis, John Murphy 1 and Liam Murphy 2. Abstract

Keywords: SQA,Black Box Testing( BBT), White Box testing(wbt).

FileMaker Server 12. FileMaker Server Help

Arti Tyagi Sunita Choudhary

Web Application s Performance Testing

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology Fall 2007

Web Design (One Credit), Beginning with School Year

Deltek Vision 7.0 LA. Technical Readiness Guide

Combining Global Load Balancing and Geo-location with Emissary TM

Updating the International Standard Classification of Occupations (ISCO) Draft ISCO-08 Group Definitions: Occupations in ICT

Criteria for web application security check. Version

Christchurch Polytechnic Institute of Technology Information Systems Acquisition, Development and Maintenance Security Standard

Web Design Specialist

Cloud computing an insight

OCR LEVEL 3 CAMBRIDGE TECHNICAL

What is a Mobile Responsive Website?

WordCom, Inc. Secure File Transfer Web Application

A Comparative Study of Different Log Analyzer Tools to Analyze User Behaviors

Louisiana Department of Insurance. Software Development Standards

GLOBAL JOURNAL OF ENGINEERING SCIENCE AND RESEARCHES

WATKINS MFG DEALER GUIDE TO UNDERSTANDING WOORANK REPORTS

Risk Based Testing Handout

Lesson 7 - Website Administration

The Process Guidelines should be used in conjunction with the standard OUM process guidelines when using Testing and Quality Management Tools.

White Paper. The Ten Features Your Web Application Monitoring Software Must Have. Executive Summary

SEO Search Engine Optimization. ~ Certificate ~ For: By. and

KM road map. Technology Components of KM. Chapter 5- The Technology Infrastructure. Knowledge Management Systems

An Introduction to LoadRunner A Powerful Performance Testing Tool by HP. An Introduction to LoadRunner. A Powerful Performance Testing Tool by HP

X Series Application Note 43:

Transcription:

Enhance Websites Testing via Functional and Non-Functional Approach: Case Study Mohd. Sakir Hussain 1, Ashif Ali 2 and Jana Shafi 3 1 Department of Computer Engineering Assistant Professor, AFSET New Delhi, India 2,3 Department of Computer Engineering Assistant Professor, BHCET New Delhi, India ABSTRACT As internet is an essential part of our life s.websites too make up a way and becomes a demanding application from where people can collect or recollect information as per their interests. In accordance, websites should respond for user requirements and websites must be correct in manner and behavior which is directly proportional for success of business and organization. This lets a way to test websites thoroughly and frequently from each and every point. In this paper we proceed to discuss and present various methods (functional and non-functional) to test website. However, testing a website is not an easy job since we have to test not only the client side but also the server-side. We believe that our approach will help any website engineer to completely test a website with minimum number of error along with manipulation. Keywords: website, black box, white box. 1. INTRODUCTION You may have developed your website using an expensive what you see is what you get editor but there s no guarantee that site visitors will get the website as you see it. You will need to extensively test the website to ensure that visitors have a comfortable stay and don t leave your site in a jiffy. Here software testing role comes into play. Software testing has been with us for many years, and many standards and best practices have been written about software testing for as long. A website is a structured collection of information stored on web servers, and is accessible on the Internet through a web browser. Websites can contain various media, levels of interactivity, and social networking features. Websites, of course, also contain single pages of information, such as news articles. The World Wide Web (WWW) has been in existence for less than ten years, and the situation where serious business critical applications are online is even more recent. These sites conduct what is known as electronic commerce (ecommerce), which is business over the WWW.[9] Making a web site does not end with putting all the media and software together. Actually, web site work never ends. When all the design is done, you have to test the site [7, 8] first before sending it to the World Wide Web for the world to see. The client end of the system is represented by a browser, which connects to the website server via the internet. The centerpiece of all web applications is a relational database which stores dynamic contents [2]. A transaction server controls the interactions between the database and other servers (often called application servers ). The administration function handles data updates and database administration. 1.1 Significance How important is it to test your website before going live? Site testing is essential so that every aspect of your website is functioning, especially software. Site testing ensures that there are no broken links, no missing graphics, no misspelled words, no bugs in the software, and that download time is as specified. [2, 6, 8]There is much software out there that does the site testing for you. I will tackle only a few here that were recommended by experts. This will give an insight on how the software works and how extensive the testing is. 1.2 HOW CAN A WEB SITE BE TESTED? Points to be considered while testing a Web site: Websites are essentially client/server applications - with web servers and browser clients. Figure 1.shows the essential working of website. Consideration should be given to the interactions between html pages, TCP/IP communications, Internet connections, firewalls, applications that run in web pages (such as applets, JavaScript, plug-in applications), and applications that run on the server side (such as scripts, database interfaces, logging applications, dynamic page generators, asp, etc.). Volume 2, Issue 5, May 2013 Page 66

Additionally, there are a wide variety of servers and browsers, various versions of each, small but sometimes significant differences between them, variations in connection speeds, rapidly changing technologies, and multiple standards and protocols. The end result is that testing for web sites can become a major ongoing effort. 2. RELATIONAL WORK Fig.1Working of website The instant worldwide audience of a Website makes its quality and reliability crucial factors in its success. Correspondingly, the nature of the WWW and Website s pose unique software testing challenges. Webmasters, WWW applications developers, and Website quality assurance managers need tools and methods that meet their specific needs. Mechanized testing via special purpose WWW testing software offers the potential to meet these challenges. Our technical approach, based on existing WWW browsers, offers a clear solution to most of the technical needs for assuring Web Site quality. 2.1 Paper Organization In the rest of this paper, Section 2 introduces the Web Sites [1, 6, and 7] impose some entirely new challenges in the world of software quality! Within minutes of going live, a WWW application can have many thousands more users than a conventional, non-www application. The immediacy of the WWW creates immediate expectations of quality and rapid application delivery, but the technical complexities of a Web Site and variances in the browser make testing and quality control that much more difficult, and in some ways, more subtle, than "conventional" client/server or application testing 2.2 Concepts defining website quality & reliability [i]. Timeliness: Web Sites change often and rapidly. How much has a Web Site changed since the last upgrade? How do you highlight the parts that have changed? [ii]. Structural Quality: How well do all of the parts of the Web Site hold together? Are all links inside and outside the Web Site working? Do all of the images work? Are there parts of the Web Site that are not connected? [iii]. content: Does the content of critical pages match what is supposed to be there? Do key phrases exist continually in highly-changeable pages? Do critical pages maintain quality content from version to version? What about dynamically generated HTML (DHTML) pages? [iv]. Accuracy and Consistency: Are today's copies of the pages downloaded the same as yesterdays? Close enough? Is the data presented to the user accurate enough? How do you know? [v]. Response Time and Latency: Does the Web Site server respond to a browser request within certain performance parameters? In an E-commerce context, how is the end-to-end response time after a SUBMIT? Are there parts of a site [3] that are so slow the user discontinues working? 2.3 Concepts website quality [i]. Timeliness Webpages have to be upgraded constantly. When it was last upgraded? How consistent is it to today s news or information? [ii]. Structural Quality All the parts of the website have to be working well. Are all the links (inside or outside) working? Are all the images loading? [iii] Content This does not only concern spell checking, proofreading but also the consistency of the contents with either all of the other pages or with the request of the user, especially with dynamic web pages. Does the content Volume 2, Issue 5, May 2013 Page 67

of critical pages match what is supposed to be there? Do key phrases exist continually in highly changeable pages? Do critical pages maintain quality content from version to version? [3, 7, 8] 3. WEB APPLICATION ARCHITECTURE It is clear the fig. 2 that we have to conduct the following tests: [5, 9] 3.1 What are the expected loads on the server and what kind of performance is required under such loads. This may include web server response time, database query response times. 3.2 Browser- The browser is the viewer of a Web Site and there are so many different browsers and browser options that a well done. Web Site is probably designed to look good on as many browsers as possible. This imposes a kind of de facto standard: the Web Site must use only those constructs that work with the majority of browsers. But this still leaves room for a lot of creativity, and a range of technical difficulties. And, multiple browsers' renderings and responses to a Web Site have to be checked. What kind of browsers will be used? What kinds of connection speeds will they have? Are they intra-organization (thus with likely high connection speeds and similar browsers) or internet-wide (thus with a wide variety of connection speeds and browser types)? What kind of performance is expected on the client side (e.g., who fast should pages appear, how fast should animations, applets, etc. load and run)? [6] Fig. 2 Web Application Architecture There are many possible terms for the web application development life cycle including the spiral life cycle or some form of iterative life cycle. A more cynical way to describe the most commonly observed [3] approach is to describe it as the unstructured development similar to the early days of software development before software engineering techniques were introduced. The maintenance phase often fills the role of adding missed features and fixing problems. [i]. Will down time for server and content maintenance/upgrades be allowed? How much? [ii]. What kinds of security (firewalls, encryptions, passwords, etc.) will be required and what is it expected to do? How can it be tested? 4. METHODOLOGY 4.1 White Box Testing [i] Configuration Testing: This type of test includes. The operating system platforms used. The type of network connection. Internet service provider type. As shown in fig.3 diagram. The real work for this type of test is ensuring that the requirements and assumptions are understood by the development team, and that test environments with those choices are put in place to properly test it. During this testing tester validate how well our current project is able to supports on different types of hardware technologies like as different types of printers interface cord(nic),topology etc. This testing is also called as hardware testing or portable testing. Volume 2, Issue 5, May 2013 Page 68

Fig. 3 Configuration Testing We can evaluate the number of hardware s against requirements. Hardware=h Requirements=r n Configuration= h r i=1 4.2 Usability Testing In the usability testing (figure.4), there are standards and guidelines that have been established throughout the industry. The end-users can blindly accept these sites since the standards are being followed. But the designer shouldn t completely [4] rely on these standards. While following these standards and guidelines during the making of the website, he should also consider the learnability; understand ability and operability features so that the user can easily use the website. Fig. 4 Usability Testing 4.3 Performance Testing Performance testing involves testing a program for timely responses as shown in fig.5.. In this testing the designer should also consider the loading time of the web page during more transactions. For example: a web page loads in less than eight seconds, or can be as complex as requiring the system to handle 10,000 transactions per minute, while still being able to load a web page within eight seconds. Some typical steps to create Performance test cases are as follows: a) Identify the software processes that directly influence the overall performance of the system. b) For each of the identified processes, identify only the essential input parameters that influence system performance. c) Create usage scenarios by determining realistic values for the parameters based on past use. Include both average and heavy workload scenarios. Determine the window of observation at this time. Fig.5 Performance Testing d) If there is no historical data to base the parameter values on, use estimates based on requirements, an earlier version, or similar systems. Figure 6 shows performance through graphs and according to time. Volume 2, Issue 5, May 2013 Page 69

Performance testing can be done through the window of the browser, or directly on the server. If done on the server, some of the performance time that the browser takes is not accounted for. Performance=p Time=t Web page=w m n P t w i=1 j=1 ----------- (i) where i=1 to n is time calculated in seconds j=1 to m is the web pages retrieve in a given time Transaction=W T P ----------- (ii) P Transaction W T Fig.6 web analytics used in performance tests 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. 4.4 Scalability Testing:- In Fig 7 illustrates The term Scalability can be defined as a web application s ability to sustain its required number of simultaneous [1] users and/or transactions, while maintaining adequate response times to its end users. When testing scalability, configuration of the server under test is critical. All logging levels, server timeouts, etc. need to be configured. In an ideal situation, all of the configuration files should be simply copied from test environment to the production environment, with only minor changes to the global variables. In order to test scalability, the web traffic loads must be determined to know what the threshold requirement for scalability should be. Fig. 7 Scalability Testing We evaluate the Traffic Load by introducing some threshold value which decides how smooth the traffic or load functioning website. Website Threshold=W T Volume 2, Issue 5, May 2013 Page 70

Web Traffic= W TR Website Scalability=Ws n i=1 W TR= (Total no of users on N websites) websites (Time taken to load web pages) T webpages (i) W T= N (users) T (time in seconds) --- (ii) 4.5 Security Testing Ws= W T W TR Probably the most critical criterion for a web application is that of security. The need to regulate access to information, to verify user identities, and to encrypt confidential information is of paramount importance. Credit card information, medical information, financial information, and corporate information must all be protected from persons ranging from the casual visitor to the determined cracker. There are many layers of security, from password-based security to digital certificates, each of which has its pros and cons. The test cases for security testing can be derived as follow: a) The web server should be setup so that unauthorized users cannot browse directories and the log files in which all data from the website stores. b) Early in the project, encourage developers to use the POST command wherever possible because the POST command is used for large data. c) When testing, check URLs to ensure that there are no information leaks due to sensitive information being placed in the URL while using a GET command. d) A cookie is a test file that is placed on a website visitor s system that identifies the user s identity. The cookie is retrieved when the user revisits the site at a later time. Cookies can be controlled by the user, regarding whether they want to allow them or not. If the user does not accept cookies, will the site still work? 4.6 Recoverability Testing Website should have backup or redundant server to which the traffic is rerouted when the primary server fails. And the rerouting mechanism for the data must be tested. If a user finds your service unavailable for an excessive period of time [4], the user will switch over or browse the competitor s website. If the site can t recover quickly then inform the user when the site will be available and functional. 4.7 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 5. Black Box Testing 5.1 Web Browser-Page Tests This type of test covers the objects and code that executes within the browser, but does not execute the server-based components. For example, JavaScript and VB Script code within HTML [3] that does rollovers, and other special effects. This type of test also includes field validations that are done at the HTML level. Additionally, browser-page tests include Java applets that implement screen functionality or graphical output. The test cases for web browser testing can be derived as follows: a) If all mandatory fields on the form are not filled then it will display a message on pressing a submit button. b) It will not show the complete information about sensitive data like full credit card number, social security number (SSN) etc. c) Hidden passwords. d) Login by the user is must for accessing the sensitive information. e) It should check the limits of all the fields given in the form. 5.2 Transaction Testing Volume 2, Issue 5, May 2013 Page 71

In this testing, test cases are designed to confirm that information entered by the user at the web page level makes it to the database, in the proper way, and that when database calls are made from the web page, the proper data is returned to the user. (Fig.8) Fig.8Transaction Testing 6. FUTURE SCOPE In this paper we have shown User s comfort-ability can use these websites. Web testing is still just evolving because software used in the web is relatively new to other software. Software testing has been around for a long time. But there are many companies making software for web testing. A developer need only choose one that meets his needs and his budget. Future websites must have implemented inbuilt testing methods thus ensuring time saving and an [11] automated testing websites. 7. CONCLUSION In this paper we have discussed far for the failure free operation of a website and we must follow both non-functional and functional testing methods. With these methods one can test the performance security, reliability, user interfaces etc. which are the critical issues related to the website. Thus ensuring users and visitors satisfaction towards website. Website is a challenging exercise and by following methods described in this paper. Some of those challenges may be mitigated. References [1]. K.K Aggarwal, software testing and analysis, third edition 2011. [2]. Rajiv Chopra, software testing a practical approach, third edition 2011,. pp. 303-309. [3]. Lan Somerville, Software Engineering, Fifth edition 2002.,. pp. 464-480 [4]. Roger S.Pressman, Software Engineering, a practitioner s approach, Fifth Edition 2001.,. pp. 769-794 [5]. An Architecture for Web Applications Essay in DIF 8914Distributed Information Systems Sven Ziemer, November 28, 2002. [6]. White Paper the Website Quality Challenge. [7]. Stout, G.A. 2001. Testing a Website: Best Practices. Retrieved October 21, 2002 from the World Wide Web:www.reveregroup.com/exchange/articles/stout2.pdf. [8]. Web: http://www.pantos.org/atw/testing.html. [9]. http://www.radview.com/default.asp.h [10]. Williams, A. 2001. Web-testing: A step-by-step guide. Retrieved October 21, 2002 from the World Wide Web:www.webmasterbase.com/article/506. [11] Automated test data generation via path table International Journal of Artificial Intelligence and Mechatronics Volume 1, Issue 1, Pg. no. 52-58 AUTHOR Mohd Sakir Hussain is an Assistant Professor in CSE department having qualifications as B.TECH (CSE) & M.Tech (CE). He has published many Papers in International Conferences and National Conferences. He has a 3+ Year of experience in the field of teaching and Industries. Area of interest in Networking and Software Development. Mr. Ashif Ali is an Assistant Professor in CSE department and HOD in I.T Department having qualifications as B.TECH (CSE) & M.Tech (CE). He has published many papers in International Journal Conferences, International Conferences and National Conferences. He has a 3+ Years of experience in the field of teaching. Area of interest includes Fundamental of Computer programming in C, Data Structure and Algorithms, Computer Networking, Software Engineering and Computer software Testing etc. He has also interest in writing text book. Ms. Jana Shafi is an Assistant Professor in CSE department having qualifications as B.TECH (CSE) & M.Tech (CE).She has published many Papers in International Journal Conferences, International Conferences and National Conferences. She has a 2+ Year of experience in the field of teaching. Area of interest includes Fundamental of Computer programming in C, Data Structure and Algorithms, Computer Networking, Artificial Intelligence and Computer Graphics. Volume 2, Issue 5, May 2013 Page 72