Quality Testing

Quality is delighting customers

Does someone have any idea how to write functional, usability, security test cases for a e-commerce website?

Does someone have any idea how to write functional, usability, security test cases for a e-commerce website?. I'm new to this field.
This website is built with joomla with virtue mart.
Both positive and negative scenarios are needed.
Atleast the procedural way to continue would be ideal

Views: 1664

Reply to This

Replies to This Discussion

Types of Testing for E-Commerce

 

The e-commerce testing process is divided according to the three tiers of Windows DNA architecture.

  1. Web Tier
  • Web site content testing
  • Web site testing
  • Browser compatibility
  1. Middle Tier
  • Software performance testing (business logic, tax, shipping calculations)
  • Server load testing
  1. Data Tier
  • Database testing
  • Search options
  • Query response time
  • Data integrity
  • Data validity
  • Recovery testing

 

Specific tests that must be performed across the Windows DNA layers are:

  • Security
  • Regression testing
  • User acceptance testing
  • Unit testing
  • System testing

 

Testing Web Tier

 

Web Site Content Testing

A Web site should be well planned, tested for errors, and finally presented to the online customers. Content testing is important to present a quality, error-free Web site.

 

Types of content testing

The site should be attractive and customer-friendly. It should have:

  • Visual appeal
  • No grammatical and spelling errors
  • Reliable and consistent information

 

Visual appeal

The visual appearance of a Web site is important to maintain repeat visits. Although the home page of an e-commerce site is the "breadwinner," catalog pages cannot be ignored. Regardless of the developer, choice for color, font, or graphics, the tester needs to test for the appearance of the site and bring out problem areas.

Tests required to check the visual appeal of a site are described below.

 

What to Test

Environment

Tools/Technique

Fonts

User Environment

GUI Testing

Intensity of Colors

User Environment

GUI Testing

Graphics

Development Environment

GUI Testing

Audio and Video

Development Environment

GUI Testing

Grammar and Spelling

User/Development Environment

GUI/Proofreading/Spell check

Facts and Figures

User Environment

GUI Testing

 

  • Browser compatibility for font style

There are a number of different fonts available on HTML editors these days. However, many of these fonts may not display on all browsers, especially on older versions. Or they may display as unreadable characters. Therefore, it’s important to test the browser for version compatibility.

  • Consistency of font size

Test for consistency of font size throughout the Web site. A body text font size of 10 to 14, and a heading font size of 18 to 24 are the norm.

  • Colors

Consider the combinations of foreground and background colors throughout the site. For example, it may be difficult to read yellow text on a white background.

  • Graphics

Fewer graphics on a Web page aid in faster downloads. As much as possible, thumbnails should replace photographs. Developers must test for download time of graphics-intensive pages.

 

Grammatical and spelling errors in the content

The home page requires special attention because it is the first page that the site visitor sees.

Use the spelling checker to check the spelling throughout the site. Sometimes there are errors that may not be checked by the spelling checker, such as “there” and “their.”

Finally, make sure to proofread the entire site to check the grammar.

 

Authenticity of facts provided

Verify all facts and figures that relate to products and services. The testing team can verify these with the legal, marketing, and business groups.

 

 

Web Site Testing

Proper functioning of hyperlinks

Hyperlinks in Web sites can be broken, missing, or improperly assigned. In all three cases, the site visitor is unable to navigate to the appropriate Web page. Therefore, check to make sure that all the links work properly.

 

What to Test

Environment

Tools/Technique

Broken Links

User Environment

GUI Testing

Missing Links

User Environment

GUI Testing

Wrong Links

User Environment

GUI Testing

 

Broken links

There may be times when the developer inadvertently changes the source folder of the graphics or the graphics file name while modifying the Web site. This causes a break in the link between the existing page and the linked page or the graphic. In this case, testing needs to done to detect broken links. For example, if a developer changes the name of the products page from "Product.htm" to "Products.htm," the link between the home page and the Products page breaks so that the Products page is no longer accessible from the home page.

 

Missing links

Links that have not yet been created are called “missing links.” For example, a developer might forget to link a button on the home page with the Products page. Consequently, site visitors would not be able to access the Products page from the home page.

 

Incorrect links

Incorrect links cause errors. These links can take a site visitor to the wrong page.

Testing hyperlinks helps to eliminate broken, missing, or wrongly assigned links. There is software available that helps to check broken and incorrect links. Missing links should be checked manually.

Also, there are Web sites that offer online testing for broken links at a nominal fee:

http://netmechanic.com
http://www.linkalarm.com/index.html
http://www.Websitegarage.com

 

 

Browser Compatibility

After creating a Web page, browser compatibility testing begins. This is because text, graphics, or colors may appear differently on different browsers. To prevent these problems, developers choose software that is compatible with most of the popular browsers, such as Internet Explorer, Netscape, AOL, and WebTV.

The following table details the compatibility of browsers.

 

Browser

Browser
version

ActiveX
controls

VBScript

JavaScript

Java
applets

Dynamic
HTML

Frames

CSS 1.0

Internet Explorer

4.0 and later

Enabled

Enabled

Enabled

Enabled

Enabled

Enabled

Enabled

Internet Explorer

3.0 and later

Enabled

Enabled

Enabled

Enabled

Disabled

Enabled

Enabled

Netscape Navigator

4.0 and later

Disabled

Disabled

Enabled

Enabled

Enabled

Enabled

Enabled

Netscape Navigator

3.0 and later

Disabled

Disabled

Enabled

Enabled

Disabled

Enabled

Disabled

Both Internet Explorer and Navigator

4.0 and later

Disabled

Disabled

Enabled

Enabled

Enabled

Enabled

Enabled

Both Internet Explorer and Navigator

3.0 and later

Disabled

Disabled

Enabled

Enabled

Disabled

Enabled

Disabled

Microsoft Web TV

Unavailable

Disabled

Disabled

Disabled

Disabled

Disabled

Disabled

Disabled

 

 

What to Test

Environment

Tools/Technique

Font and Graphics position

User environment

GUI Testing

Resolution

User environment

GUI Testing

Support for different scripts and software

User environment

GUI Testing

 

 

 

 

 

 

 

 

 

Examples of GUI tests

  • Test each toolbar and menu item for navigation using the mouse and keyboard.
  • Test window navigation using the mouse and keyboard.
  • Test to make sure that proper format masks are used. For example, all drop-down boxes should be properly sorted. The date entry should also be properly formatted.
    • Test that the colors, fonts, and font widths are to standard for the field prompts and displayed text.
    • Test that the color of the field prompts and field background is to standard in read-only mode.
    • Make sure that vertical scroll bars or horizontal scroll bars do not appear unless required.
    • Test that the various controls on the window are aligned correctly.
    • Make sure that the window is resizable.
    • Check the spellings of all the text displayed in the window, such as the window caption, status bar options, field prompts, pop-up text, and error messages.
      • Test that all character or alphanumeric fields are left-justified and that the numeric fields are right-justified.
      • Check for the display of defaults if there are any.
      • In case of multiple windows, check that they all have the same look and feel.
      • Check that all shortcut keys are defined and work correctly.
      • Check for the tab order. It should be from top left to bottom right. Also, the read-only/disabled fields should be avoided in the TAB sequence.
        • Check that the cursor is positioned on the first input field when the window is opened.
        • Make sure if any default button is specified, it should work properly.
        • Check for proper functioning of ALT+TAB.
        • Ensure that each menu command has an alternative hot key sequence and that it works correctly. (See Appendix B & Appendix C.)
          • Check that there are no duplicate hot keys defined on the window.
          • Validate the behavior of each control, such as push button, radio button, list box, and so on.
          • Test to make sure that the window is modal. This will prevent the user from accessing other functions when this window is active.
            • Test that multiple windows can be opened at the same time.
            • Make sure that there is a Help menu.
            • Check to make sure that the command buttons are grayed out when not in use.

 

Testing Middle Tier

 

Software Performance Testing

Software performance testing aims to ensure that the software performs in accordance with operational specifications for response time, processing costs, storage use, and printed output.

The data on software performance is gathered during:

  • Current and expected normal transactions
  • Current and expected peak transactions
  • Minimal transaction volumes

All interfaces are fully tested. This includes verifying the facilities and equipment, and checking to make sure that the communication lines are performing satisfactorily.

 

What to Test

Environment

Tools/Technique

Correct data capture

Development environment

Testing ASP, CGI scripts by Black Box and White Box technique, Boundary value analysis, and Equivalence partitioning.

Transactions completion

User/System test environment

Functional testing by simulating customer data.

Gateway software

Development environment

Functional testing by simulating customer data.

Tax and shipping calculations

User environment

Functional testing by random data, Boundary value analysis, and Equivalence partitioning.

 

Correct data capture

Correct data capture refers to the use of CGI scripts or ASP to capture data from the Web client. This includes forms, credit card numbers, and payment details. Any error in capturing this data will result in incorrect processing of the customers’orders.

 

Completeness of transaction

Transaction completeness is the most important aspect of e-commerce transactions. Any error in this phase of operation can invite legal action because the affected party may be at risk of losing money due to an incomplete transaction.

 

Gateway compatibility

The payment gateway consists of software installed on Web servers to facilitate payment transactions. The gateway software captures credit card details from the customer and then verifies the validity of the credit card with the transaction clearinghouse.

Gateways are complex because they can create compatibility problems. In turn, these problems make e-commerce transactions unreliable. So, the entrepreneur needs to consult experienced developers before investing in a payment gateway. Therefore, before launching the site, online pilot testing must be done to test the reliability of the gateway.

 

Tax and shipping calculations

Entrepreneurs have to grapple with multiple taxes and shipping rates. The problem becomes larger if the entrepreneur is catering to customers outside the country.

Some off-the-shelf software provides ready-made solutions to both problems simultaneously. This software is upgraded whenever tax structures change. However, the entrepreneur needs to regularly check with legal and tax consultants to keep track of tax and shipping rates. Testing needs to be done to ensure that the customer is charged the correct tax and shipping amount. Incorrect tax and shipping levies on the customer invariably result in losing customers to the competitors.

 

Server Load Testing

E-commerce sites that rely on a heavy volume of trading on the Internet need to make sure that their Web servers have a very high uptime. To prevent breakdown and to offload traffic from a server at peak time, entrepreneurs must invest in additional Web servers. The power of a Web server to handle a heavy load at peak hours depends on the network speed and the server’s processing power, memory, and storage space of the server. The hardware component of the Web server is most vulnerable at peak hours.

The number of simultaneous users that the server can successfully handle measures its capacity. Excessive load on the Web server causes it to degrade dramatically in performance until the load is reduced. The objective of this load testing is to determine an optimum number of simultaneous users.

 

Stress testing

Running the system in a high-stress mode creates high demands on resources and stress tests the system. Some systems are designed to handle a specified volume of load. For example, a bank transaction processing system may be designed to process up to 100 transactions per second; an operating system may be designed to handle up to 200 separate terminals. Tests must be designed to ensure that the system can process expected load. This usually involves planning a series of tests where the load is gradually increased to reflect the expected usage pattern.

Stress tests steadily increase the load on the system beyond the maximum design load until the system fails. This type of testing has a dual function:

  • It tests the failure behavior of the system. Circumstances may arise through an unexpected combination of events where the load placed on the system exceeds the maximum anticipated load. Stress testing determines if overloading the system results in loss of data or user service.
  • It stresses the system and may cause certain defects to come to light, which may not normally manifest the errors.

Stress testing is particularly relevant to an e-commerce system with Web databases. These systems often exhibit severe degradation when the network is swamped with operating system calls.

 

Load testing software

There is a lot of load-testing software. The testing technique used by most software is to simulate multiple logons. After a series of these multiple logons, the software calculates the optimum load factor for the Web server. The Web server software is then configured using this test data. As a result, if the traffic increases beyond the load capacity of the Web server, the server stops entertaining further requests from online users. For more details on Web server load testing, see www.Webperfcenter.com.

The Microsoft® Web Application Stress (WAST) tool is designed to simulate multiple browsers that are requesting pages from a Web site. This tool can realistically simulate many requests with relatively few client machines. Make sure that you are using an adequate number of client machines.

 

 

 

Testing Data Tier

Database Testing

An e-commerce site typically stores catalogs, shopping baskets, user profiles, and order information in the database.

·         Location of a database

The database does not have to be on the same server on which the storefront is hosted. The database server can be separated from the Web server by a firewall. This adds complexity to the testing processes. Therefore, you do not have to perform accessibility, security testing, and performance testing.

 

·         Objectives of database testing

The purpose of database testing is to determine how well the database meets requirements. This is an ongoing process because no database is static. When a database is created, a mirror of the same database should be created and stored either on the same computer or another computer. The original database is left alone and its mirror image goes through the various tests. This process continues until the tests are successful so that the changes can be implemented in the original database.

Databases are tested for five reasons:

  1. Relevance of search results
  2. Query response time
  3. Data integrity
  4. Data validity
  5. Recovery

What to Test

Environment

Tools/Technique

Relevance of search results

System test environment

Black Box and White Box technique

Query response time

System test environment

Syntax Testing /Functional Testing

Data integrity

Development environment

White Box Testing

Data validity

Development environment

White Box Testing

 

Relevance of Database Search Results

The Search option is one of the most frequently used functions of online databases. Search results provide direct links to other pages, saving time and effort.

Many site visitors complain that Search results are not relevant or result in “wild goose chases.” Therefore, building relevance into database searches is an essential part of data handling.

Testing for Search relevance should be carried out by a team of people that are not a part of the development team. This team assumes the role of the online customer and tries out random Search options with different keywords. The Search results are recorded by the percentage of relevance to the keyword. At the end of the testing process, the team comes up with a series of recommendations. This can be incorporated into the database Search options.

 

Query Response Time

The query response time is essential in online transactions. The turnaround time for responding to queries in a database must be short. The results from this testing may help to identify problems, such as bottlenecks in the network, specific queries, the database structure, or the hardware.

 

Data Integrity

Important data stored in the database include the catalog, pricing, shipping tables, tax tables, order database, and customer information. Testing must verify the correctness of the stored data. Therefore, testing should be performed on a regular basis because data changes over time.

 

Examples of data integrity tests

  • Test the creation, modification, and deletion of data in tables as specified in the functionality.
  • Test to make sure that sets of radio buttons represent a fixed set of values. Check what happens when a blank value is    retrieved from the database.
  • Test that when a particular set of data is saved to the database, each value gets saved fully. In other words, the truncation of strings and rounding of numeric value does not occur.
  • Test whether default values are saved in the database if the user input is not specified.
  • Test the compatibility with old data. In addition, old hardware, versions of the operating system, and interfaces with other software need to be tested.

 

Data Validity

Errors caused due to incorrect data entry, called data validity errors, are probably the most common data-related errors. These errors are also the most difficult to detect in the system. These errors are typically caused when a large volume of data is entered in a short time frame. For example, $67 can be entered as $76 by mistake. The data entered is therefore invalid.

You can reduce data validity errors. Use the data validation rules in the data fields. For example, the date field in a database uses the MM/DD/YYYY format. A developer can incorporate a data validation rule, such that MM does not exceed 12, DD does not exceed 31.

In many cases, simple field validation rules are unable to detect data validity errors. Here, queries can be used to validate data fields. For example, a query can be written to compare the sum of the numbers in the database data field with the original sum of numbers from the source. A difference between the figures indicates an error in at least one data element.

 

Recovery Testing

Another test that is performed on database software is the Recovery test. This test involves forcing the system to fail in a variety of ways to ensure that:

  • The system recovers from faults and resumes processing within a pre-defined period of time.
  • The system is fault-tolerant, which means that processing faults do not halt the overall functioning of the system.
  • Data recovery and restart are correct in case of auto-recovery. If recovery requires human intervention, then the mean time to repair the database is within pre-defined acceptable limits.

 

Other Tests

Security

Gaining the confidence of online customers is extremely important to e-commerce success. Building the confidence of online customers is not an easy task and requires a lot of time and effort. Therefore, entrepreneurs must plan confidence-building measures. Ensuring the security of transactions over the Internet ensures customer confidence.

The main technique in security testing is to attempt to violate built-in security controls. This technique ensures that the protection mechanisms in the system secure it from improper penetration.

The tester overwhelms the system by continuous requests, thereby denying service to others. The tester may purposely cause system errors to penetrate during recovery or may browse through insecure data to find the key to system entry.

There are two distinct areas of concern in e-commerce security: network security and payment transaction security. Types of security breaches in these areas are:

  • Secrecy
  • Authentication
  • Non-repudiation
  • Integrity control

 

Network security

Unauthorized users can wreak havoc on a Web site by accessing confidential information or by damaging the data on the server. This kind of security lapse is due to insufficient network security measures. The network operating system, together with the firewall, takes care of the security over the network.

The network operating system must be configured to allow only authentic users to access the network. Also, firewalls must be installed and configured. This ensures that the transfer of data is restricted from only one point on the network. This effectively prevents hackers from accessing the network.

For example, a hacker accesses the unsecured FTP port (Port 25) of a Web server. Using this port as an entry point to the network, the hacker can access data on the server. The hacker may also be able to access any machine connected to this server. Therefore, security testing will indicate these vulnerable areas and will also help to configure the network settings for better security.

Network security over the Internet is tested using programs. One such program for Microsoft Windows 2000 is the Kane Security Analyst (KSA) from Intrusion Detection Inc. KSA is a complete network-testing tool that also tests operating systems other than Windows 2000.

The KSA network security testing tool tests for:

  • User rights
  • Removable disk locations
  • Strength of password policies
  • Use of logon scripts and password expiration dates
  • Storage of passwords in clear text or encrypted form

 

The KSA report manager generates several reports to check miscellaneous sets of security-related concerns. The software points out security loopholes only and does not trap unauthorized visitors.

Visit these links for more details:

www.intrusion.com
www.rsa.com

 

Payment transaction security

          Secure transactions create customer confidence. That’s because when customers purchase goods over the Internet, they can be apprehensive about giving credit card information. Therefore, security measures should be communicated to the customer.

Two things needed to be tested to ensure that the customer’s credit card information is safe. First, testing should ensure that the credit card information is transmitted and stored securely. Second, testing should verify that strong encryption software is used to store the credit card information, and only limited, authorized access is allowed to this information.

 

For more information on secure electronic transactions, see:

www.verisign.com
www.cylink.com
www.terisa.com
www.cybercash.com
www.checkfree.com

 

Hi Ashish,

     Thank you so much. You have been extremely helpful..

you r welcome :)

For joomla with virtual mart u dont need to do much stress of  how order  is place as they have there default setting .also   as joomla is ready made  framework        UI of site ,button ,pages little be same . just    issue occur like notification not working ,event  not able to share for joomla and for virtual mart ui issue like button misplace, Also in ie7 menu  overlapping occur   and also sometime  error  for transaction key ....People not  do much customize in joombla component so just verify with FSD... whatever document present  . hope that helpfull

  Hi ,,,

          How to test the credit card functionality for an e-commerce site ? can any one share this ,,,,

 Thanks...

What exactly you want or over all??? I can help you...

  Hi siddiq,

                 my question is for purchasing items in an e-commerce site ,how you test the functionality for the credit card transaction ,, is the company provide any dummy card for us to test and see the transactions , how we test,,,,

Yes, client has to provide dummy credit cards. and 1 genuine card to be tested using in Production.

Developers need to bypass the payment gateway in test environments.

We use to make a purchase of $1 and inform our client, they cancelled the order if it's $1.

 Siddiq, 

         KLK  can collect dummy Credit card numbers available over the Web ... 

Thnks lot Ashih,

For sharing this valuable information with us.

i am working as an Tester for eCommerce based application . once again thanks lot for sharing ur knowledge.

RSS

TTWT Magazine


Advertisement

Advertisement

Advertisement

Advertisement

© 2021   Created by Quality Testing.   Powered by

Badges  |  Report an Issue  |  Terms of Service