Okazuje się że zainstalowanie tej już wiekowej aplikacji nie było aż takie wymagające!
TestLink pobieramy ze strony: https://testlink.org/
Niestety tak jak piszą w README TestLink wymaga starszej wersji PHP. Mimo kilku różnych prób nie udało mi się prawidłowo uruchomić go w wersjach 7.x i wyższych – wyskakuje „Fatal error: Uncaught Error„
3. System Requirements – server
Server environment should consists from:
– web-server: Apache 1.2 , 2.x
– PHP 5.2, 5.3
– DBMS: MySQL 5.x , Postgres 8.x , MS-SQL 2005
Wymusiło to na mnie użycie w tej konkretnie subdomenie zapisu w .htaccess (działam na Zenbox):
AddHandler application/x-httpd-php56 .php
(wykorzystam gałąź 5.6 dla wersji PHP). Widzimy więc:

oraz sam TestLink także podsumowuje nam stan systemu:

Poprawiam jeszcze dla porządku komunikat „Maximum Session Idle Time before Timeout” na dowolne 96 minut:

wpisując do .htaccess linijkę:
php_value session.gc_maxlifetime 5760
Ta konfiguracja pozwoliła już w akceptowalny sposób uruchomić instalację aplikacji TestLink.

Miałem przygotowaną czystą bazę danych (dzięki Zenbox) więc konfiguracja przebiegła sprawnie w kolejności pokazanej na stronie:

Po zalogowaniu się do aplikacji należało pozbyć się komunikatu jaki pokazywał się na górze strony:

czyli w szczególności zastosować się do sugestii: „Install directory should be removed!” – kasuję go!
Teraz zabrałem się za ustawienia w pliku custom_config.inc.php i dodałem takie linijki:
/** Display name definition (used to build a human readable display name for users) */
$tlCfg->username_format = '%first% %last% (%login%)';
Efekt dla Karola Jankowskiego, który ma login „leader1” (a także ma Role: leader):

/** Login page could show an informational text */
$tlCfg->login_info = '<center><br><br><br><hr>10.02.2025r.<br><br>Moja konfiguracja <b>TestLink</b>.<br>Opis na blogu: <a href="https://blog.pauluz.pl/" target="_blank">https://blog.pauluz.pl/</a></center>';
Dzięki tym ustawieniom uzyskałem taki ekran logowania:

/* [GENERATED DOCUMENTATION] */
$tlCfg->document_generator->company_name = 'pauluZ Corporation';
$tlCfg->document_generator->company_copyright = '2025 © pZ Document';
$tlCfg->document_generator->confidential_msg = 'Przykład mojej pracy z TestLink. Rozbudowana konfiguracja wszystkich opcji.<br>Opis na blogu: <a href="https://blog.pauluz.pl/" target="_blank">https://blog.pauluz.pl/</a>';
$tlCfg->document_generator->tc_version_enabled = TRUE;
// the maximum allowed file size for each repository entry, default 1MB.
// Also check your PHP settings (default is usually 2MBs)
$tlCfg->repository_max_filesize = 5; //MB
// TRUE -> when you upload a file you can give no title
$g_attachments->allow_empty_title = FALSE;
Na koniec skonfigurowałem jeszcze wysyłkę maili co u mnie na hostingu okazało się bardzo proste bo tylko ustawiłem ten wpis na poprawny:
$g_smtp_host = '........'; # SMTP server MUST BE configured
