Skip to content

06. Testing

alawvt edited this page Jul 22, 2016 · 12 revisions

Test sprint changes

Each sprint, after testing individual commits in our LDEs, we deploy sequentially to dev, pprd, and production. We need to test these changes on each server.

Create a test plan

Using the other files in Google Drive VTechWorks/Testing/ as a template, copy the latest file and rename it Dspace_version_firstCommitDate_lastCommitDate_sprintName_Testing, e.g. Dspace_5.5_April_28_June_3_Irish_Setter_Testing.

Leave the column headings and remove the content for each tab.

Review each commit for this sprint and add an entry briefly describing the issue. Often an issue will require more than one test. It is helpful to add a link to the associated issue and/or pull request in GitHub.

Take note that testing off-campus and certain OAI-PMH and handle functionality will not be possible on dev and pprd.

It is also useful to review the list below of general testing to remember possible related functionality to test.

Tests to run on new release candidates of VTechWorks

Any or all of these tests, and additional tests, can be conducted in local development environments, the development server, the pre-production server, and the production server. See also the DSpace "Testathon" pages for tests to run on particular versions of DSpace: https://wiki.duraspace.org/display/DSPACE/Testathon

Automated testing with Selenium

Selenium IDE is a Firefox plugin that lets you record interactions with a website and play the interactions back later. It's intended to facilitate repeated testing, and you can add checks for content on the page to make sure the site is behaving as expected. vtechworks_selenium_tests

BASIC VIEWING

  • Check that items are findable by handle server URL
  • Turn on collection counts and check they are correct
  • Make communities and collections list viewable and expandable
  • Check display of Unicode characters
  • Check display of long Item file name
  • Check full item record page: If the content of item abstract field is relatively long or it doesn't contain any space, it won't cause disordered layout.
  • Check to see that thumbnails are displaying correctly
  • Check that theme passes accessibility standards - run through http://wave.webaim.org/

LOCAL CUSTOMIZATIONS

  • Check email addresses in all config/emails
  • Replace "DSpace" with repository name in /config folder and interface
  • Replace default submission license with local license
  • Check that appropriate users have shell access to run command line tools
  • Check that custom scripts can run
  • Check that text on home page is correct
  • Check that local favicon appears
  • Check that Google Analytics is enabled
  • Check that statistics are accurate
  • Upload logo and make sure it links back to the home page

BASIC USER FUNCTIONS

  • Register a new account
  • Retrieve lost password
  • Submit an item through web interface
  • Submit with submission approval workflow

ADMIN FUNCTIONS

  • Creating a community/collection
  • Adding a user to a community/collection
  • Create a community/collection
  • Add a user to a community/collection
  • Upload a batch through the web interface
  • Upload a metadata batch (CSV only, no file zip) through the web interface
  • Claim task in workflow
  • Edit the metadata for an existing item
  • Remove file from existing item
  • Delete an item
  • Do batch upload through command line
  • Upload a new version to an existing item
  • Add metadata-only item without file
  • Create a group
  • Create an e-person

OFF CAMPUS, RESTRICTED, EMBARGOED

  • Test off-campus sign-in access
  • Look at a restricted item OFF campus (not logged in)
  • Look at a restricted item ON campus (not logged in) - VPN (2 - All Traffic over VPN)
  • Make bitstreams for an existing item embargoed
  • Make bitstreams for an existing item embargoed
  • Make sure there is a way to request a restricted item
  • Request a restricted item from off campus
  • Look at an item with an embargoed file
  • Look at an item with an embargoed file
  • Look at an item on the day its embargo is lifted
  • Submit an item with an embargoed file
  • Request an embargoed item
  • Look at a withdrawn item
  • Look at a private item

SEARCH AND BROWSE

  • Search by title keywords
  • Search by author keywords
  • Test advanced search with filter(s), sort search results, limited to a collection
  • Make sure that search results are highlighted
  • Test browse
  • Test browse by facets

INDEXING

  • Test OAI-PMH harvesting

Definitions

See also DSpace Item State Definitions at https://wiki.duraspace.org/display/DSDOC5x/DSpace+Item+State+Definitions

  • Embargoed item - an item whose metadata is public, but which has one or more files that will not be released for public view until a particular time. Note that this differs from the definition of embargoed ETDs used by the Graduate School and ETD-db. Neither the metadata or files of embargoed ETDs are viewable. Most embargoed ETDs have not been loaded to VTechWorks. The few embargoed ETDs in VTechWorks are in withdrawn status. (see below).

  • Restricted item - an item whose metadata is public, but which has one or more files that can only be viewed on the Virginia Tech campus

  • Withdrawn item - a deleted item, in theory restorable, not visible to anyone but administrators

  • Private item - an item that is not discoverable by users but is available through backend services such as OAI-PMH and the REST API.