Skip to content
This repository was archived by the owner on Jun 25, 2024. It is now read-only.

Functional Testing

Baggerone edited this page Sep 28, 2022 · 5 revisions

Automated Testing

This is done through codeception acceptance tests in conjunction with a phantomjs container (headless).

Once your containers are up, in your VM run ...

> docker-compose run --rm browser_test /data/codecept run

Or, if you need to run just one of the tests, run ...

> docker-compose run --rm browser_test /data/codecept run tests/acceptance/<the name of the Cept.php file>

If a test fails, then the logouts at the end of the test will not have run. Because of that, you will need to restart your phantomjs container to kill the sessions before trying to run the test again. docker-compose restart phantomjs

The tests are found in .../development/codeception/tests/acceptance. They are similar to the manual tests listed below.

(Remember, output for failed tests can be found in the container's /data/tests/_output folder)

Manual Testing

Main SP authenticates through Main Idp. Third SP is also authenticated. Second SP must re-authenticate.

Ensure main SP goes to discovery page and can login through the main IdP

Ensure third SP is also authenticated

Ensure second SP is forced to authenticate

Ensure third SP is still authenticated

Second SP authenticates through Second Idp. Main SP is forced to discovery page but is also authenticated. Third SP must re-authenticate.

Ensure second SP can login through the second IdP

Ensure main SP goes to discovery page but is authenticated

Ensure third SP is forced to authenticate

Third SP authenticates through Main Idp. Main SP is forced to discovery page but is also authenticated. Second SP must re-authenticate.

Ensure third SP can login through the main IdP

Ensure main SP goes to discovery page but is authenticated

Ensure second SP is forced to authenticate

Main SP authenticates through Second Idp. Second SP is also authenticated. Third SP must re-authenticate.

Ensure main SP goes to discovery page and can login through the second IdP

Ensure second SP is also authenticated

Ensure third SP is forced to authenticate

Ensure second SP is still authenticated

Second SP authenticates through Second Idp. Main SP is forced to discovery page, chooses main IdP and must authenticate.

Ensure second SP can login through the second IdP

Ensure main SP goes to discovery page and must authenticate when choosing the main Idp

Clone this wiki locally