No commit activity in last 3 years
No release in over 3 years
Watir-Webdriver Based Page-Object Framework for Kuali Open Library Environment QA Testing
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.3
>= 0
>= 0

Runtime

 Project Readme

Kuali Open Library Environment

http://www.kuali.org/ole


OLE QA Testing Framework


Open Library Environment Quality Assurance Testing Framework


This is a testing framework for the Kuali Open Library environment. It is be used to define OLE pages and screen elements for OLE regression testing scripts and the OLE Smoketest application.

Configuration

Options can be set in the file config/options.yml. Here is a list of the options hash keys and their meanings:

  • :url:
    • The URL of the main OLE installation you will be testing.
  • :docstore_url:
    • The URL of the OLE Document Store installation.
  • :headless?:
    • If set to true, the testing session will be run headlessly in an XVFB session handled by the Headless gem.
  • :implicit_wait:
    • Used to set Selenium Webdriver's default wait period.
  • :explicit_wait:
    • Used to set the Watir Webdriver default wait period.
  • :doc_wait:
    • Used to set the maximum timeout for an OLE eDocument to finish routing to the next step in its workflow.
  • :browser:
    • Pass an active instance of Watir Webdriver if you want to start an OLE Framework session with an already-running browser.

These options can be set manually, or using the Rake configurator task. Use the Rake show_config task to see the current options settings at any time.

Instituational Data

Institutional data is defined in the YAML files in the data/ directory. The OLE QA Framework can be adapted to use different institutional data first by editing the YAML data files in data/, and optionally altering the default values of a few data factories and their respective RSpec tests in the spec/ directory.

YAML Data Files

The data/ directory contains the following YAML data files:

  • accounts.yml
    • OLE account numbers, organized into a hash containing arrays of account numbers organized by chart code.
  • borrower_types.yml
    • Borrower types used for patron and circulation information, organized into an array.
  • circulation.yml
    • Circulation desks and the locations which they serve, organized into an array containing a hash for each desk, which itself contains an array of locations served by that desk.
  • country.yml
    • A string containing the country name to be used for patron information, as it appears in the OLE application itself.
  • objects.yml
    • Object code values for accounting, organized into a hash containing arrays of object codes organized by chart code.
  • patron.yml
    • An array of hashes containing patron information drawn from the OLE demo data, with keys for ID, first and last name, and barcode.
  • states.yml
    • An array of states used for OLE patron information, as they appear in the OLE application itself.

Default Data Values in Classes

The following classes in the lib/data_factory/ directory contain default selections which may need to be changed for optimal functionality:

  • account_factory.rb
    • Methods for selecting account and object codes default to the :BL chart selector.
  • string_factory.rb
    • Prices are formatted to two decimal places by default. Non-US prices may need commas or other separator values.
    • Phone numbers are in US NNN-NNN-NNNN format.
  • patron_factory.rb
    • Phone numbers are in US NNN-NNN-NNNN format.

Default Data Values in Specs

The following specs in spec/data_factory contain default selections which may need to be changed for optimal functionality:

  • bib_factory_spec.rb
    • Tests for selecting a circulation desk use the 'BL_EDUC' circulation desk, taken from the OLE demo data.
  • string_factory_spec.rb
    • Tests for phone numbers default to the US NNN-NNN-NNNN phone number format.
  • patron_factory_spec.rb
    • Tests for phone numbers default to the US NNN-NNN-NNNN phone number format.