Please note that instances of <version> on this testing page should be replaced with <release number>-RC-<release candidate number>, where release number is the semantic version at the top of this page and release candidate number is the release candidate you are testing.

i.e. 6.3.1-RC-2, 6.4.0-RC-1, etc

Issues Discovered:


Testing Tickets

External Projects

Samvera (instructions)

Project

Tested by

Success? RC-1

Success? RC-2

Notes

valkyrie







Islandora (testing ticket)

 Project

Tested by

Success? RC-1Success? RC-2

Notes

Islandora 




Testing Plan

git clone https://github.com/fcrepo/fcrepo
cd fcrepo
git checkout fcrepo-<version>   # or pull pre-built resources from https://github.com/fcrepo/fcrepo/releases/tag/fcrepo-<version>
mvn install # to build everything so Fedora is ready to run during API testing

API-Test Suite

  1. Start Fedora with the following command

    mvn jetty:run -Dfcrepo.external.content.allowed=fcrepo-http-api/src/test/resources/allowed_external_paths.txt -Dfcrepo.auth.webac.userAgent.baseUri=http://example.com/ -Dfcrepo.cache.webac.acl.timeout.minutes=0 -pl fcrepo-webapp/
  2. Run the API-Test suite (which you can clone/build from https://github.com/fcrepo/Fedora-API-Test-Suite) with the following command

    java -jar target/testsuite-1.0-SNAPSHOT-shaded.jar -c config-local.yml
    1. Where "config-local.yml" is something like the following (for use with the mvn jetty:run command)

      default:
        rooturl: http://localhost:8080/rest/
        root-controller-user-webid: http://example.com/fedoraAdmin
        root-controller-user-name: fedoraAdmin
        root-controller-user-password: fedoraAdmin
        permissionless-user-webid: http://example.com/testuser
        permissionless-user-name: testuser
        permissionless-user-password: testpass
        broker-url: tcp://127.0.0.1:61616
        topic-name: fedora
        queue-name:
        implementation-name: Fedora
        implementation-version: <version>  
PlatformTest Suite VersionTested byResults RC-1 (#pass,fail,skip)Results RC-2
(pass,fail,skip)
Notes
Linux5eca0de3
Demian Katz Total tests run: 241, Failures: 1, Skips: 28

I used Ubuntu 20.04 LTS for my testing.

Linux5eca0de3Thomas Bernhart Total tests run: 241, Failures: 1, Skips: 28

Fedora 37, OpenJDK 11.0.12 (Maven: 3.8.2)

OSX 5eca0de3Jared Whiklo 

Total tests run: 241, Failures: 1, Skips: 28



OSX M1 or M25eca0de3

Total tests run: 241, Failures: 1, Skips: 28


On M1 with macOS 12.6.3

One-Click Run

cd fcrepo-webapp; mvn clean install -Pone-click
CommandPlatformTested ByRC-1RC-2Notes
java -jar fcrepo-webapp-<version>-SNAPSHOT-jetty-console.jarLinux(tick)

java -jar fcrepo-webapp-<version>-SNAPSHOT-jetty-console.jarMac(tick)

java -jar fcrepo-webapp-<version>-SNAPSHOT-jetty-console.jarMac M1(tick)

java -jar fcrepo-webapp-<version>-SNAPSHOT-jetty-console.jar

Windows




Docker


docker run -p8080:8080 -v /path/to/fedora_home:/fedora_home -v /path/to/fcrepo.properties:/fcrepo.properties -e CATALINA_OPTS="-Dfcrepo.config.file=/fcrepo.properties" --name=fcrepo-test fcrepo/fcrepo:<version>


PlatformTested ByRC-1RC-2Notes
Linux(tick)
Results of the API test suite:
Total tests run: 241, Failures: 74, Skips: 27
Mac(tick)

Windows






Performance and Scalability Tests

Ensure that the UI is performant with 2 million resources 

DatabaseTested ByRC-1RC-2

postgresql




mariadb


mysql


Manual Tests

All of the below should take place in the HTML UI.

  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. Create versions
  9. View versions
  10. View Stats Endpoint


PlatformTested bySuccess? RC-1Success?
RC-2
Notes
Mac (tick)

Mac M1(tick)

Linux



Windows




External Content

Create and verify all three modes of external content handling: proxy, redirect, copy

#Proxy
curl -i -H"Link: <file:///local/file/storage/photo.png>; rel=\"http://fedora.info/definitions/fcrepo#ExternalContent\"; handling=\"proxy\"; type=\"image/png\"" -XPUT -ufedoraAdmin:fedoraAdmin http://localhost:8080/rest/test_proxy_local_file


#verify that the binary is returned. 	
curl -i -u fedoraAdmin:fedoraAdmin -XGET -ufedoraAdmin:fedoraAdmin http://localhost:8080/rest/test_proxy_local_file


#remove the file one disk, repeat the previous command and verify that an error code is returned.
#Redirect
curl -i -H"Link: <https://duraspace.org/wp-content/themes/duraspace/assets/images/fedora/fedora-logo-black.png>; rel=\"http://fedora.info/definitions/fcrepo#ExternalContent\"; handling=\"redirect\"; type=\"image/png\"" -XPUT -ufedoraAdmin:fedoraAdmin http://localhost:8080/rest/test_redirect_remote_file


#Get the file and verify a 307 is returned
curl -i -ufedoraAdmin:fedoraAdmin http://localhost:8080/rest/test_redirect_remote_file


Handling (proxy,redirect,copy)PlatformTested bySuccess? RC-1Success? RC-2Notes
proxy, redirectMac(tick)













Resources

[1] Testing scripts

  • No labels