はじめに
以前TestLinkを構築してから時間が経過してしまったので、最新のテスト管理ツール状況を確認してみました。
@mima_ita さんによる詳しい情報が非常に役立ちました。ありがとうございます。
TestLink
@mima_ita さんが書いているとおり、2025年現在 TestLinkはあまり活発な修正が行われておらず、かつて存在したbitnamiの仮装環境もサポートされていなくなっています。
このまま使い続けるのは難しく、他のテスト管理ツールに切り替える必要があるのでしょうか? ということで、現時点のTestLinkをインストールして確認してみました。
2025年11月現在、動作検証した環境は以下の通り。
- Amazon Linux 2023
- TestLink 2.0.0 (dev)
- PHP 8.4
- MairaDB 10.5
インスタンスの準備
お試し用のEC2インスタンスを作成する。稼働させてみると、ディスクは3G弱、メモリは1G使わないので、t3.microあたりのインスタンスで十分試すことができそう。
- t3.micro
- disk: 8GB
インスタンスが起動したら、インスタンスクライアントでインスタンスに接続します。
必要なパッケージのインストール
TestLinkの稼働に必要なパッケージをAmazon Linux 2023にインストールします。
sudo yum update
sudo yum install git httpd php php-gd php-ldap php-mysqlnd mariadb105-server
MariaDBの初期設定
MariaDBが正しくインストールされたことを確認します。
$ mysql --version
mysql Ver 15.1 Distrib 10.5.29-MariaDB, for Linux (x86_64) using EditLine wrapper
MariaDBの文字コードを設定します、まずサーバー側。/etc/my.cnf.d/mariadb-server.cnf ファイルを編集します。
sudo vi /etc/my.cnf.d/mariadb-server.cnf
[mariad]のセクションに2行追加する
[mariadb]
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci
つぎに、クライアント側。/etc/my.cnf.d/mariadb-clients.cnf ファイルを編集します。
sudo vi /etc/my.cnf.d/mariadb-clients.cnf
[mysql]のセクションに1行追加する
[mysql]
default-character-set=utf8mb4
MariaDBを起動します。自動起動も有効にします。
sudo systemctl start mariadb
sudo systemctl enable mariadb
DBが起動したらrootのパスワードなどの初期設定を行います。rootのパスワードを一旦 password に設定、他はすべて n で構わない。
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.
You already have your root account protected, so you can safely answer 'n'.
Switch to unix_socket authentication [Y/n] n
... skipping.
You already have your root account protected, so you can safely answer 'n'.
Change the root password? [Y/n] n
... skipping.
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] n
... skipping.
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] n
... skipping.
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] n
... skipping.
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] n
... skipping.
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
初期設定が終わったら接続確認します。status を表示して、文字コードが設定されたことを確認します。
sudo mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.5.29-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> status
--------------
mysql Ver 15.1 Distrib 10.5.29-MariaDB, for Linux (x86_64) using EditLine wrapper
Connection id: 3
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MariaDB
Server version: 10.5.29-MariaDB MariaDB Server
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
UNIX socket: /var/lib/mysql/mysql.sock
Uptime: 11 sec
Threads: 1 Questions: 4 Slow queries: 0 Opens: 17 Open tables: 10 Queries per second avg: 0.363
--------------
MariaDB [(none)]> exit
Bye
現時点では 'sudo mysql -u root -p' で接続できるが 'mysql -u root -p' で接続できないので、パスワードを設定します。
sudo mysql -u root -p
alter user 'root'@'localhost' identified by 'password';
接続できることを確認します。
mysql -u root -p
PHPの設定
TestLinkにおけるPHPの推奨値を設定。
sudo vi /etc/php.ini
max_execution_time を30秒から120秒にする。
max_execution_time = 120
TestLinkのインストール
準備できたので、いよいよTestLinkをインストールします。
GitHubからTestLinkの最新のソースを取得します。
cd /var/www/html
sudo git clone https://github.com/TestLinkOpenSourceTRMS/testlink-code.git testlink
cd testlink
# 2.0を試します。1.9.20の場合はスキップ
sudo git checkout 2.0.0-October-2024
ログなど、TestLinkが書き込むディレクトリーを準備します。
sudo mkdir -p /var/testlink/logs/
sudo mkdir -p /var/testlink/upload_area/
chown -R apach:apache /var/testlink
chown -R apach:apache /var/www/html/testlink
httpd を起動し、自動起動を設定します。
sudo systemctl start httpd
sudo systemctl enable httpd
ブラウザー・インストール
初期設定はブラウザーから行います。
http://<host名>/testlink にアクセスする。
「New installation」をクリックしてインストール開始する。インストールは以下のステップがある。
- Acceptance of License
- Verification of System and configration
- Definition of DB access
- Create DB, testlink DB user, structures and default data & create configuration file.
- Verify the procefure result and continue to TestLink login.
基本的には Continue で続行する。Create DB, testlink DB user, structures and default data & create configuration file のステップでは作成したDBの情報を入力する。
- Database Type: MySQL/MariaDB (5.6+ / 10.+) - デフォルトのまま
- Database host: localhost - デフォルトのまま
- Database name: testlink - デフォルトのまま
- Database admin login: root - デフォルトのまま
- Database admin password: password - 上記で設定したパスワード
- TestLink DB login: testlink - TestLink用に作成するユーザー
- TestLink DB password: password - TestLink用に作成するユーザーのパスワード
以下の画面が表示されて、インストールが完了です。
udf設定
インストール完了時にブラウザーにsqlを実行せよ、と表示されるので実行。
/var/www/html/testlink/install/sql/mysql/testlink_create_udf0.sql の YOUR_TL_DBNAME を testlink に置き換える(2か所)
DBに接続して上記sqlを実行する。
$ sudo mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 29
Server version: 10.5.29-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> source /var/www/html/testlink/install/sql/mysql/testlink_create_udf0.sql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
Query OK, 0 rows affected (0.004 sec)
Database changed
Query OK, 0 rows affected (0.004 sec)
お疲れさまでした。
TestLink 2.0の画面
TestLink 1.9.20のUIは古い感じがしていましたが、TestLink 2.0は新しいUIとなっています。機能的には少し追加があるようですが、あまり変化は無いようです。
ログイン画面
初期画面
まとめ
TestLinkは機能的にはあまり革新的なところはありませんが、脆弱性対応などのメンテナンスは引き続き行われているようです。
@mima_ita さんの情報を参考にして他のツールも検討しましたが、しばらくはTestLinkを使い続けようと思います。



