Tuesday, June 1, 2010

Introduction


Worldwide web is browsed by customers with different knowledge levels, while testing websites (static/Dynamic) QA department should concentrate on various aspects to make effective presentation of website in www.

Functionality

Links

Objective is to check for all the links in the website

  • · All Hyperlinks
  • · All Internal links
  • · All External links
  • · All Mail links
  • · Check for orphan pages
  • · Check for Broken links

Forms

Check for the integrity of submission of all forms

  • · All Field level Checks
  • · All Field level Validations
  • · Functionality of create, modify, delete and view
  • · Handling of wrong inputs
  • · Default values if any (standard)
  • · Optional Versus Mandatory fields

Cookies

Check for the cookies that has to be enabled and how it has to be expired

Web Indexing

Depending on how the site is designed using metatags, frames, HTMLsyntax, dynamically created pages, passwords or different languages, our site will be searchable in different ways

  • · Meta Tags
  • · Frames
  • · HTML syntax

Database

Two types of errors that may occur in web application

  • · Data Integrity : Missing or wrong data in table
  • · Output Errors : Errors In writing ,editing or reading operation in the table

Usability

How simple customer can browse the website

Navigation

Navigation describes the way user navigate with in a webpage, between different user interface controls (buttons, text boxes, combo boxes, dropdown lists ...etc)

  • · Application navigation is proper through tab (key board)
  • · Application navigation through mouse
  • · Main features accessible from the main/home page (mother window)
  • · Any hotkeys, control keys to access menus

Content

Correctness is whether the information is truthful or contains misinformation. The accuracy of the information is whether it is without grammatical or spelling errors. Remove irrelevant information from your site this may otherwise cause misunderstanding or confusion

  • · Spelling and grammar
  • · Updated information (contact details mail IDs help reports)

General appearance

  • · Page appearance
  • · Color, font size
  • · Frames
  • · Consistent Designs
  • · Symbols and logos (localization)

User Interface

All about how exactly website looks like (view)

Basic guidelines for web User interface (Microsoft)

  • · Verify whether screen resolution been taken in to account while using browser, will the UI resize itself as you maximize/minimize this must be tested with various screen resolutions
  • · verify whether the number of ‘controls’ per page have been checked, generally 10 is a good number
  • · Where there are options to choose from, user should be forced to choose from a set of radio buttons and the default should be pointing at default message (none, select one...Etc)
  • · Every dropdown box should have the first choice as NONE (it could be any other meaningful sentence such as ‘Choose one’ or ‘select’
  • · Ensure persistency of all values, when you enter values in a form, and move on the next page and then return to change one of the previous screen .The users must not be forced to re-enter all the values once again, this must be checked and ensured
  • · Horizontal scrolling is not preferable in general .Avoid using horizontal scroll bar Ensure that the use of vertical scroll bar is judicious
  • · Consider the use of pagination where appropriate.
  • · Ensure that ‘shift click’ ‘control click ‘work in list boxes, clarify these features work in both browsers
  • · The location of buttons (OK and Cancel) should be at the right hand bottom side of a screen and consistent.
  • · Clarify whether encryption of the password occurs from your login page all the way to the backend (the login page must not transmit clear –text password)
  • · Illegal operations should give popup messages (message should be simple and clear)
  • · positive popup messages should be displayed (submitted, deleted, updated, done and cleared)
  • · Ensure that you have multiple check boxes when multiple selections is to be performed
  • · Avoid long scrolling drop down list make it short
  • · website URL should be small and simple

Server side Interface

Server side Interface

  • · Verify that communication is done correctly, web server-application server, application server-database server and vice versa
  • · Compatibility of server software, hardware, network connections
  • · Database compatibility
  • · External interface if any

Client side Compatibility

Platforms

Check for the website compatibility with

  • · Windows (XP, Vista)

Browsers

  • · Internet Explorer
  • · Firefox
  • · Chrome
  • · Browser settings (security settings graphics, java etc...)
  • · Frames and cascade style sheets
  • · HTML specification

Graphics

  • · Loading of images graphics, etc…

Security

  • · Valid and invalid login
  • · limits defined for the number of tries
  • · Can it be bypassed by typing URL to a page inside directly in the browser?
  • · verify log files are maintained to store the information for traceability
  • · verify encryption is done correctly if SSL is used (if applicable)
  • · No access to edit scripts on the server without authorization

Performance

Connection speed

  • · Try with different connection speeds (14.4, 28.8, 56.6, ISDN, cable DSL, T1, T3)

Load

  • · Perform load test as per the SLA (Service Level Agreement)
  • · What is the estimated number of users per time period and how will it be divided over the period
  • · Will there be peak loads and how systems react
  • · Can your site handle a large amount of users requesting a certain page?
  • · Is large amount of data transferred from user?

Stress

  • · Stress testing is done in order to actually break a site or certain features to determine how the system reacts
  • · Stress tests are designed to push and test system limitations and determine whether the system recovers gracefully from crashes
  • · Note: Hackers often stress systems by providing loads of wrong in-data until it crash and then gain access to it during start-up
  • · System abnormal conditions (stress testing)
      • o Less bandwidth of cable
      • o Low disk memory
      • o Low processor speed

The Ultimate Website Launch Checklist

Pre-Launch

Content Style

Typography and layout

‣ Check for incorrect punctuation marks, particularly apostrophes, quotation marks and

hyphens/dashes

‣ Check headings for where you could potentially use ligatures

‣ Check for widow/orphan terms in important paragraphs

Spelling and grammar

Consistency

‣ Capitalization (especially of main headings)

‣ Tense/Style of writing

‣ Recurring/common phrases (e.g. ‘More about X’ links)

‣ Variations in words (e.g. Websites vs Web Sites, or UK vs US spelling)

‣ Treatment of bulleted lists (e.g. periods or commas at end of each item)

Check for hard-coded links to staging domain (i.e. ensure all links will change to ‘live’ URL/domain

when site is launched)

Ensure no test content on site

Check how important pages (e.g. content items) print

For re-designs, ensure important old/existing URLs are redirected to relevant new URLs, if the URL

scheme is changing

Check all ‘Hidden Copy’ (e.g. alt text, transcriptions, text in JavaScript functions)

Standards and Validation

Accessibility

HTML validation

JavaScript validation

CSS validation

Search Engine Visibility, SEO and Metrics

Page Titles are important; ensure they make sense and have relevant keywords in them

Create metadata descriptions for important pages

Check for canonical domain issues (e.g. variations in links to http://site.com http:// www.site.com http://www.site.com/index.html should be reduced to a consistent style)

Ensure content is marked-up semantically/correctly (<h1>, etc.)

Check for target keyword usage in general content

Check format (user/search engine friendliness) of URLs

Set up Analytics, FeedBurner, and any other packages for measuring ongoing success

Create an XML Sitemap

Configure Google Webmaster Console and Yahoo! Site Explorer

Functional Testing

Check all bespoke/complex functionality

Check search functionality (including relevance of results)

Check on common variations of browser (Internet Explorer, Firefox, Safari, Chrome etc.), version (6, 7, 2.2, 3.1 etc.) and platform (Windows, OSX, Linux)

Check on common variations of Screen Resolution

Test all forms (e.g. contact us, blog comments), including anti-spam features, response emails/text, etc.

Test without JavaScript, Flash, and other plug-ins

Check all external links are valid

Security/Risk

Configure backup schedule, and test recovery from backup.

Protect any sensitive pages (e.g. administration area)

Use robots.txt where necessary

Security/Penetration test

Turn-off verbose error reporting

Check disk space/capacity

Set-up email/SMS monitoring/alerts (e.g. for errors, server warnings); consider internal and external monitoring services

Performance

Load test

Check image optimization

Check and implement caching where necessary

Check total page size/download time

Minify/compress static (JavaScript/HTML/CSS) files

Optimize your CSS: use short image paths; make full-use cascading nature of CSS, etc.

Check correct database indexing

Check configuration at every level (Web server, Database, any other software e.g. Content Management System)

Configure server-based logging/measurement tools (e.g. database/web server logging)

Finishing Touches

Create custom 404/error pages

Create a favicon

Post-Launch

Marketing

Social Marketing: Twitter, LinkedIn, Digg, Facebook, Stumbleupon, etc.

Submit to search engines

Set-up PPC/Google Adwords where necessary

Check formatting of site results in SERPs

Ongoing

Monitor and respond to feedback (direct feedback, on Social Media sites, check for chatter through Google, etc

Check analytics for problems, popular pages etc. and adjust as necessary

Update content

Software Quality By :

Ahmed Abdelhamid
Software Quality Engineer
Interactive Saudi Arabia Ltd.
An Economic Offset Program Co.
http://www.il.com.sa/ahamid



0 comments: