Last Update : 10 March 2009
Author      : Paul Carvalho


CONTENTS:
=========
There should be 6 files in this archive:
  o README.txt            - this file
  o 0_SmokeTest_start.rb  - Start the script here
  o uncommon.rb           - common methods used in all test scripts
  o logins.csv            - data file created to hold sample login info
  o ST_admin.rb           - tests for the Admin functionality
  o ST_store.rb           - tests for the Store functionality


WHAT IS THIS?
=============
These files are sample Ruby/Watir scripts created to illustrate some of the main points
in the "Unscripted Automation" presentation given to the KWSQA in March 2009 by Paul Carvalho.
The presentation may be found at http://www.staqs.com/

These scripts were designed to run on a test application called "Depot" - a book store web 
application.  For more information see: http://pettichord.com/watirtutorial/install/depot.html


SETUP INFO:
===========
These files may be viewed using any simple text editor.  If you wish to run these scripts,
you will need to install (1) the Ruby environment and (2) the Test application.


(1) the Ruby environment:
-------------------------
(a) install RUBY - I used version 1.8.5-24 during the demo
    - download installer from http://rubyforge.org/frs/?group_id=167
    

(b) install Watir - I used version 1.6.2 during the demo
    - after installing Ruby, type in "gem install watir" at a command prompt
    - if required, download the gems at http://rubyforge.org/frs/?group_id=104

(c) install an IE DOM Explorer (optional - if you are interested in developing test scripts)
    - some people use the IE Developer Toolbar
    - See the main Watir project home page for 'Quick Start' info:
      http://wiki.openqa.org/display/WTR/Project+Home


(2) the Test application: (with thanks to Bret Pettichord)
-------------------------
(a) Download the test application
    - go to : http://github.com/bret/framework-examples/tree/master
    - click the [Download] button at the top of the page to grab all the framework examples
    - we are only interested in the depot/ app at this time

 *** The depot/README.txt file has setup and configuration info you should read first ***

(b) Install Rails (a Ruby web application development library)
    - I used version 1.2.3 during the demo
    
(c) Download, install and configure MySQL: http://www.mysql.com/
    - Choose "Typical" Installation.
    - Select the option to add commands to your path.
    - Configure MySQL with a "Standard Configuation" Server Instance


LAUNCHING THE TEST APP:
=======================
See the info at: http://pettichord.com/watirtutorial/labs/getting_started.html


DISCLAIMER:
===========
The Watir test scripts were [quickly] written to demonstrate some of the main points 
in the "Unscripted Automation" presentation.  They work, but they are just examples.
The test scripts are incomplete and use different methods to accomplish similar things
to demonstrate the flexibility you have with Ruby/Watir to do certain things 
(e.g. enter input into a field).

I encourage you to explore these scripts and to focus on how the key "unscripted" 
principles are implemented.  Implementing additional script improvements is left up to you.


FINAL THOUGHT:
==============
When scripting any test, remember to focus on the following 2 questions:
- WHY are you testing this feature/page/window/area?
- What are you asking the computer to do (repeatedly)?

The first question is meant to get you thinking about the *purpose* of the test.
 - Is it worthwhile?  Is it worth repeating?
 - What value/information will this test provide?
 - What risk(s) does it cover?  and so on.

The second question is meant for you to think about the specific steps you are asking
the computer to follow.
 - What value is there in repeating the exact same test (i.e. steps + input) every single time?
 - What things will you have the computer observe during the test execution?
 - How are you asking the computer to evaluate the results (e.g. 'Oracles')?


== END ==