{"id":38818992,"url":"https://github.com/npo-poms/functional-tests","last_synced_at":"2026-01-20T17:57:35.118Z","repository":{"id":54109488,"uuid":"144841398","full_name":"npo-poms/functional-tests","owner":"npo-poms","description":"Integration/ui tests for the NPO POMS universe ","archived":false,"fork":false,"pushed_at":"2024-08-22T14:53:15.000Z","size":21783,"stargazers_count":0,"open_issues_count":5,"forks_count":8,"subscribers_count":14,"default_branch":"main","last_synced_at":"2024-08-23T06:45:59.609Z","etag":null,"topics":["npo","npo-backend-api","npo-frontend-api","poms","testing"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/npo-poms.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-15T10:50:41.000Z","updated_at":"2024-08-22T14:53:19.000Z","dependencies_parsed_at":"2024-04-11T09:56:20.402Z","dependency_job_id":"ea393a03-13d9-4ceb-8b09-8d0af1d0a8a3","html_url":"https://github.com/npo-poms/functional-tests","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/npo-poms/functional-tests","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npo-poms%2Ffunctional-tests","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npo-poms%2Ffunctional-tests/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npo-poms%2Ffunctional-tests/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npo-poms%2Ffunctional-tests/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npo-poms","download_url":"https://codeload.github.com/npo-poms/functional-tests/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npo-poms%2Ffunctional-tests/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28508943,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T11:50:55.898Z","status":"ssl_error","status_checked_at":"2026-01-17T11:50:55.569Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["npo","npo-backend-api","npo-frontend-api","poms","testing"],"created_at":"2026-01-17T13:02:31.854Z","updated_at":"2026-01-17T13:02:33.788Z","avatar_url":"https://github.com/npo-poms.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"= POMS Fitnesse tests\n:toc:\n:toclevels: 5\n\n== Introduction\n\nThis project also used to contain the functional api tests. These are moved to  https://gitlab.com/npo-identity/poms/api-tests[gitlab.com/npo-identity] . What remains are the https://fitnesse.org/[fitnesse] tests, originally developed by Specialisterren.\n\n=== Covered by the tests\n\nThere are 3 sets\n\n=== E2E, API\nThese talks to api's. I think these tests are redundant.\n\n=== GUI\n\nTests for the POMS GUI.\n\n=== Firefox, Chrome\n\n\n\n== Prerequisites\n\n* Java 11. It doesn't work with java \u003e= 17\n* Maven 3.9\n\n\n== Properties files\n\nIn order to run the tests these properties files should be present:\n\n* `poms-fitnesse-accounts.properties`\n* `poms-fitnesse-apikeys.properties` (not for 'gui').\n\nBoth properties files should be in either of these folders:\n\n* `~/conf` (Linux/macOS) of `%userprofile%\\conf` (Windows)\n* [wiki/FitNesseRoot/files/fileFixture](wiki/FitNesseRoot/files/fileFixture)\n\nThe properties files are provided separately by Specialisterren.\n\n== Running locally\n\nIn order to get access to the automated scripts in FitNesse, `start.bat` (or `start.sh`) should be executed, located in [/poms-functional-tests-fitnesse](/poms-functional-tests-fitnesse).A command prompt will appear.Wait until it says: `Starting FitNesse on port: 9090`.\n\nThen the FitNesse environment can be displayed by browsing to: [http://localhost:9090/NpoPoms](http://localhost:9090/NpoPoms).\n\nFrom this page, the test scripts can be displayed after selecting the environment (`test` and `dev`), the test purpose (`gui`, `api` and `e2e`) and in case of `gui` and `e2e`, the browser (`Firefox` and `Chrome`): [http://localhost:9090/NpoPoms.Omgevingen](http://localhost:9090/NpoPoms.Omgevingen).\n\nThe test scripts make use of scenarios in the scenario library, located in [http://localhost:9090/NpoPoms.ScenarioLibrary](http://localhost:9090/NpoPoms.ScenarioLibrary).\n\n== Running in Jenkins\n\nIn Jenkins, there should be separate jobs for every possible combination of environment, test purpose and in case of `gui` en `e2e`, the browser.\n\n=== Gui\n\nThe configuration of the test environment of `gui` with `Firefox` should be set as follows:\n\n![Npo-poms-api-jenkins-configuration](wiki/FitNesseRoot/files/images/Npo-poms-gui-jenkins-configuration.png)\n\nIf the properties files are in `~/conf` (Linux/macOS) of `%userprofile%\\conf` (Windows), then `Commando` should be set as follows:\n\n[source, bash]\n----\nMOZ_HEADLESS=1\nmvn clean test-compile failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Firefox.Gui\n----\n\nIf the properties files are not in either of these folders, the properties file `poms-fitnesse-accounts.properties` should be generated through `Commando`.This file should contain the following:\n\n[source, properties]\n----\nstandaardGebruikersnaam=gebruikersnaam\nstandaardWachtwoord=wachtwoord\nnpoGebruikersnaam=gebruikersnaam\nnpoWachtwoord=wachtwoord\nadminGebruikersnaam=gebruikersnaam\nadminWachtwoord=wachtwoord\nomroepUploaderGebruikersnaam=gebruikersnaam\nomroepUploaderWachtwoord=wachtwoord\n----\n\n`Commando` should be set as follows:\n\n[source, bash]\n----\nmvn clean test-compile\nmkdir -p target/fitnesse-results/files/fileFixture\n\n(echo standaardGebruikersnaam='gebruikersnaam' \u0026 echo standaardWachtwoord='wachtwoord' \u0026 echo npoGebruikersnaam='gebruikersnaam' \u0026 echo npoWachtwoord='wachtwoord' \u0026 echo adminGebruikersnaam='gebruikersnaam' \u0026 echo adminWachtwoord='wachtwoord' \u0026 echo omroepUploaderGebruikersnaam='gebruikersnaam' \u0026 echo omroepUploaderWachtwoord='wachtwoord') \u003e target/fitnesse-results/files/fileFixture/poms-fitnesse-accounts.properties\n\nmvn failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Firefox.Gui \"-DseleniumJsonProfile={'args':['headless','disable-gpu']}\"\n----\n\nwhere the values after `=` should be replaced by the actual values.\n\nThe configurations of other combinations of environment (`test` and `dev`) and browser (`Firefox` and `Chrome`) have a similar configuration.\n\n=== Api\n\nThe configuration of the test environment of `api` should be set like `gui`, except for the `Commando` field.\n\nIf the properties files are in `~/conf` (Linux/macOS) of `%userprofile%\\conf` (Windows), then `Commando` should be set as follows:\n\n[source, bash]\n----\nMOZ_HEADLESS=1\nmvn clean test-compile failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Api\n----\n\nIf the properties files are not in either of these folders, the properties file `poms-fitnesse-accounts.properties` should be generated through `Commando`.This file should contain the following:\n\n[source, properties]\n----\nfrontEndApiKey=apiKey\nfrontEndApiSecret=secret\nfrontEndApiOrigin=https://poms.testomgeving.example.com/\nbackEndApiKey=apiKey\nbackEndApiSecret=secret\nbackEndApiOrigin=https://poms.testomgeving.example.com/\n----\n\n`Commando` should be set as follows:\n\n[source, bash]\n----\nmvn clean test-compile\nmkdir -p target/fitnesse-results/files/fileFixture\n\n(echo frontEndApiKey='apiKey' \u0026 echo frontEndApiSecret='secret' \u0026 echo frontEndApiOrigin='https://poms.testomgeving.example.com/' \u0026 echo backEndApiKey='apiKey' \u0026 echo backEndApiSecret='secret' \u0026 echo backEndApiOrigin='https://poms.testomgeving.example.com/') \u003e target/fitnesse-results/files/fileFixture/poms-fitnesse-apikeys.properties\n\nmvn failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Api \"-DseleniumJsonProfile={'args':['headless','disable-gpu']}\"\n----\n\nwhere the values after `=` should be replaced by the actual values.\n\nThe configuration of the `dev` environment has a similar configuration.\n\n=== E2E\n\nThe configuration of the test environment of `e2e` with `Firefox` should be set like `gui`, except for the `Commando` field.\n\nIf the properties files are in `~/conf` (Linux/macOS) of `%userprofile%\\conf` (Windows), then `Commando` should be set as follows:\n\n[source, bash]\n----\nMOZ_HEADLESS=1\nmvn clean test-compile failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Firefox.E2E\n----\n\nIf the properties files are not in either of these folders, the properties file `poms-fitnesse-accounts.properties` and `poms-fitnesse-apikeys.properties` should be generated through `Commando`.The contents of these files are mentioned in the earlier sections.\n\n`Commando` should be set as follows:\n\n[source, bash]\n----\nmvn clean test-compile\nmkdir -p target/fitnesse-results/files/fileFixture\n\n(echo standaardGebruikersnaam='gebruikersnaam' \u0026 echo standaardWachtwoord='wachtwoord' \u0026 echo npoGebruikersnaam='gebruikersnaam' \u0026 echo npoWachtwoord='wachtwoord' \u0026 echo adminGebruikersnaam='gebruikersnaam' \u0026 echo adminWachtwoord='wachtwoord' \u0026 echo omroepUploaderGebruikersnaam='gebruikersnaam' \u0026 echo omroepUploaderWachtwoord='wachtwoord') \u003e target/fitnesse-results/files/fileFixture/poms-fitnesse-accounts.properties\n(echo frontEndApiKey='apiKey' \u0026 echo frontEndApiSecret='secret' \u0026 echo frontEndApiOrigin='https://poms.testomgeving.example.com/' \u0026 echo backEndApiKey='apiKey' \u0026 echo backEndApiSecret='secret' \u0026 echo backEndApiOrigin='https://poms.testomgeving.example.com/') \u003e target/fitnesse-results/files/fileFixture/poms-fitnesse-apikeys.properties\n\nmvn failsafe:integration-test -DfitnesseSuiteToRun=NpoPoms.Omgevingen.Test.Firefox.E2E \"-DseleniumJsonProfile={'args':['headless','disable-gpu']}\"\n----\nwhere the values after `=` should be replaced by the actual values.\n\nThe configurations of other combinations of environment (`test` and `dev`) and browser (`Firefox` and `Chrome`) have a similar configuration.\n\n\n== Docker, gitlab\n\nThe vpro https://git.vpro.nl/npo/test/fitnesse-runner[runs the GUI tests in gitlab too]. For this the link:Dockerfile[docker image]  (at https://hub.docker.com/u/npopoms[hub.docker.io])  is used.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnpo-poms%2Ffunctional-tests","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnpo-poms%2Ffunctional-tests","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnpo-poms%2Ffunctional-tests/lists"}