Commit graph

15 commits

Author SHA1 Message Date
8c28974692 rename dir to pytest_abra 2023-12-06 12:55:37 +01:00
f7161d5c2c WIP: make pytest-abra installable
also turn it into a pytest plugin (autoloaded)
2023-12-06 12:55:04 +01:00
88a217c4f2 rename 2023-12-06 12:37:37 +01:00
81e55598bc disable explicit plugin loading 2023-12-06 12:24:10 +01:00
4c5a470a70 refactor so that coordinator instance is available in runner instance (#8)
-> all program states available

Reviewed-on: local-it-infrastructure/e2e_tests#8
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-12-06 12:05:13 +01:00
f9c21c6e6b refactor for independent test dirs (#7)
* make it so that the actual tests can be moved anywhere, for example in abra recipe repos
-> major refactoring with pytest test discovery magic

* create RUNNER_DICT dynamically with importlib
-> none of the tests are hardcoded, more tests can be added by placing a folder

* autoload fixtures with pytest plugins

* add URL fixture to navigate on web pages. Includes url parser based on python urllib to generate correct links

* fix nextcloud setups and tests

*  add email groundwork with imbox

Reviewed-on: local-it-infrastructure/e2e_tests#7
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-12-05 21:41:43 +01:00
3fa10aaa69 implement env manager (#6)
* add EnvManager class

* holds all functions that are env file related

* integrates runner dependency resolution

* add integration and unit tests for EnvManager

Reviewed-on: local-it-infrastructure/e2e_tests#6
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-12-04 17:09:01 +01:00
d3dc0f942a new-features (#5)
* refactoring and rework: runner now has setups / tests / cleanups as lists
* add nextcloud runner
* add email testing prototype with imap fixture
* add dependency resolution (sort env files in input so that test order is correct)

Reviewed-on: local-it-infrastructure/e2e_tests#5
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-12-04 12:46:30 +01:00
2e33f8f014 make-all-env-files-available (#4)
Before, a test had only access to it's own env file / configuration (wordpress could see wordpress env file). Now, all env files are available. Wordpress test can also read authentik env file, for example to get the authentik domain.

Reviewed-on: local-it-infrastructure/e2e_tests#4
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-11-30 10:53:20 +01:00
8172f685de rework-output-and-test-logic (#3)
* fix flakey tests in authentik / wordpress

* make it possible to rerun tests partially -> passed will be skipped, failed will be repeated

* improve organization of all outputs (moving, renaming, keeping multiple versions etc.)

* add html reports, replace .txt tracebacks

* combine all html reports into one

* add demo runner with comments for documentation purposes

Reviewed-on: local-it-infrastructure/e2e_tests#3
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-11-29 14:14:46 +01:00
d2cd6ba47f authentik setup and tracing (#2)
* authentik sessions created successfully during setup without breaking tracing

* setup works on EN and DE localization by using regex patterns

* automated tracing with pytest --trace option, manual hook no longer needed

Reviewed-on: local-it-infrastructure/e2e_tests#2
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-11-27 17:01:45 +01:00
97ed87c79f [WIP] Add new automated test framework (#1)
Co-authored-by: Daniel <d.brummerloh@gmail.com>
Co-committed-by: Daniel <d.brummerloh@gmail.com>
2023-11-22 21:40:13 +01:00
859bd57006 test framework 2023-07-07 03:38:10 +02:00
5961516536 add config 2023-06-15 22:22:58 +02:00
6ec9b5df50 init 2023-06-15 21:53:12 +02:00