You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Testing Blocker Tickets

  1. RC-1

External Projects

  • Hydra

ProjectSuccess?
ActiveFedora
CurationConcerns
Plum

 

  • Islandora

Testing Plan

git clone https://github.com/fcrepo4/fcrepo4
cd fcrepo4
git checkout 4.6.2-RC

Sanity Builds

ProjectCommandPlatformTested bySuccess?Notes
fcrepo4mvn clean install

linux

 (tick)
 (tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo4mvn clean install 

mac 




fcrepo4mvn clean installwindows   
fcrepo-module-auth-rbaclmvn clean installlinux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-module-auth-rbaclmvn clean install mac

 
fcrepo-module-auth-rbaclmvn clean installwindows   
fcrepo-module-auth-xacmlmvn clean install linux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-module-auth-xacmlmvn clean install mac

 
fcrepo-module-auth-xacmlmvn clean installwindows   
fcrepo-module-auth-webacmvn clean install linux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-module-auth-webacmvn clean install mac

 
fcrepo-module-auth-webacmvn clean installwindows   
fcrepo-mintmvn clean install linuxNick Ruest

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

 
fcrepo-mintmvn clean install mac

 
fcrepo-mintmvn clean installwindows   
fcrepo-auditmvn clean install linux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-auditmvn clean install mac

 
fcrepo-auditmvn clean installwindows  
fcrepo-webapp-plusmvn clean install linux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-webapp-plusmvn clean install mac

 
fcrepo-webapp-plusmvn clean install windows   
fcrepo-webapp-plusmvn clean install -Prbacl mac 

 

fcrepo-webapp-plusmvn clean install -Prbaclwindows   
fcrepo-webapp-plusmvn clean install -PrbacllinuxNick Ruest

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

fcrepo-webapp-plusmvn clean install -Pxacmlmac

 

fcrepo-webapp-plusmvn clean install -Pxacmlwindows   
fcrepo-webapp-plusmvn clean install -Pxacmllinux

(tick)

(tick)

 Ubuntu 16.10

 Ubuntu 16.04

 

Filesystem Federation

Test simple federation

Tested by
Platform
Success?
Notes
Linux

Deployed core war with file-connector repository.json


Mac

One-Click Run

cd fcrepo-webapp; mvn clean install -Pone-click
CommandPlatform Tested bySuccess? Notes
java -jar fcrepo-webapp-4.6.2-SNAPSHOT-jetty-console.jar Linux


(tick)

 

Ubuntu 16.04

java -jar fcrepo-webapp-4.6.2-SNAPSHOT-jetty-console.jarMac



 

java -jar fcrepo-webapp-4.6.2-SNAPSHOT-jetty-console.jar

Windows   

Manual Tests

All of the below should take place in the HTML UI and non-vagrant tests should run against fcrepo-webapp-plus.

  1. Create nested containers
  2. Create binary resources
  3. Run fixity on binary
  4. Update Properties:  Perform SPARQL-Update on container
  5. Update Properties:  Perform SPARQL-Update on binary
  6. Delete container
  7. Delete binary
  8. Use transactions
  9. Create versions
  10. View versions
  11. Rollback versions

Database Tests

With Tomcat7 deployment, run above manual tests with alternate backend databases (Configuring JDBC Object Store)

DatabasePlatformTested bySuccess?Notes
MySQL5.5.38



 

PostgreSQL9.3.15

 

fcr:backup/fcr:restore Functionality

These tests are designed to ensure the proper function of the 'fcr:backup/fcr:restore' features by testing them against various Fedora configurations.  The validity of the 'restore' can only be determined by crawling the repository and verifying the successful retrieval of the repository's content.

If the anticipated Fedora release is not backwards compatible with the previous version of Fedora, then the "From Fedora Version" should be the previous version.  Otherwise, it is sufficient to test the fcr:backup/fcr:restore functionality using the same version.

See: RESTful HTTP API - Backup and Restore

# Backup
curl -X POST localhost:8080/rest/fcr:backup
 
# Restore
curl -X POST -d "/path/to/backup/directory" localhost:8080/rest/fcr:restore

Resources

  • These python scripts - fcrepo-testing - can be used to load RDF content and binary content to a Fedora repository and verify the integrity of the loaded resources.  Output from the load process can be used to verify the integrity of a 'restored' repository.  See the README for more info.
  • This script can be used to walk your repository, failing if a non-success response is encountered.

 

Tested byPlatform

Container

(Tomcat/Jetty)

Database

Backend

From Fedora
Version

To Fedora
Version

Number of

RDF Resources

Number of

Binaries

Size of Backup (du -h .)Success?Notes                  
LinuxTomcat 8.0.37MySQL Ver 14.14 Distrib 5.7.164.6.24.6.223234035M
Used LUBM_02 dataset
LinuxTomcat 8.0.37MySQL Ver 14.14 Distrib 5.7.164.6.24.7.023234035M
Used LUBM_02 dataset
DockerTomcat 7.0.69Postgres (9.4)4.6.24.6.2512512 
 
LinuxTomcat (7.0.72)Postgres (9.4)4.6.24.6.251200192K
 
MacJetty (Standalone) 4.6.2255930 

DockerTomcat 7.0.69Postgres (9.4)4.6.24.6.2256000 
 

NB: "Success" is measured not by receiving a "204 No Content" message after the 'fcr:restore' command, but by performing a GET on every resource in the repository and receiving "200 OK" messages.


Multi-thread Tests

These tests are designed to ensure the integrity of the repository when loading content in a multi-threaded fashion.  Testing for repository corruption should entail confirming the successful load of resources, the successful fetching of resources, and the successful deletion of resources. Prior to 4.6.2, these tests would result in repository corruption.

Resources

  • These python scripts - fcrepo-testing - can be used to load RDF content and binary content to a Fedora repository and verify the integrity of the loaded resources.  See the README for more info.

 

Tested byPlatform

Container

(Tomcat/Jetty)

Database

Backend

Number of

Threads

Number of

RDF Resources

Number of

Binaries

Success?Notes                  
DockerTomcat 7.0.69Postgres (9.4)3768768       
DockerTomcat 7.0.69Postgres (9.4)828210
 
 Jetty (Standalone) 3768768
 
 Jetty (Standalone) 828210
 

NB: "Success" is measured by receiving all 201s when loading content, all 200s when performing a GET on each loaded resource, and all 204s when finally deleting the content.


Vagrant Tests

vagrant destroy
vagrant up
Test stepsTested bySuccess?Notes

FEDORA_AUTH=true
FEDORA_AUDIT=true


Using: https://github.com/whikloj/fedora4-tests

FEDORA_AUTH=false
FEDORA_AUDIT=true


Using: https://github.com/whikloj/fedora4-tests

FEDORA_AUTH=true
FEDORA_AUDIT=false


Using: https://github.com/whikloj/fedora4-tests

FEDORA_AUTH=false
FEDORA_AUDIT=false


Using: https://github.com/whikloj/fedora4-tests

Manual Tests

Same as above, plus:

  1. Verify audit events are in triplestore
  2. Verify resources are in triplestore
  3. Verify resources are in Solr
  4. Verify authorization works for the two auth-enabled configurations
  5. Verify reindexing to triplestore works

[1] Testing scripts

[2] Fedora 4 Release Test Suite

  • No labels