CentOS7にTestLinkをインストール

# TestLinkとは
[TestLink(公式ページ)](http://testlink.org/)
[TestLinkOpenSourceTRMS/testlink-code](https://github.com/TestLinkOpenSourceTRMS/testlink-code)

> TestLinkとはオープンソースでWEBベース、フリーのテスト管理システムである。TestLink単体でも動作可能だが、MantisやJIRA、Bugzilla,Trac,Redmine、FogBugzなどのバグトラッキングシステムと連携可能である

[TestLink - Wikipedia](https://ja.wikipedia.org/wiki/TestLink)

# インストール

## Apache、PHP、MariaDBインストール

```
yum install -y httpd
yum -y install php-mysql php php-gd php-mbstring
yum -y install mariadb mariadb-server

systemctl enable httpd.service
systemctl enable mariadb.service
systemctl start httpd.service
systemctl start mariadb.service
mysql_secure_installation(*1参照)
```
*1 [CentOS7 MariaDBのインストール](http://www.unix-power.net/centos7/mariadb.html)

## PHPの設定
TestLinkインストール時にチェックされるので先に設定しておく。

```ini:/etc/php.ini
session.gc_maxlifetime = 2400
max_execution_time = 120
```

## TestLink配置
[TestLink download | SourceForge.net](http://sourceforge.net/projects/testlink/)
より最新のソースを取得し展開
今回は[1.9.14](http://jaist.dl.sourceforge.net/project/testlink/TestLink%201.9/TestLink%201.9.14/testlink-1.9.14.tar.gz)

```
tar zxvf testlink-1.9.14.tar.gz
mv testlink-1.9.14 /var/www/html/testlink
chmod  -R 755 /var/www/html/testlink/gui/templates_c
mkdir /var/testlink
mkdir /var/testlink/logs
mkdir /var/testlink/upload_area
chmod -R 777 /var/testlink
chown -R apache:apache /var/www/html/testlink
```

### Acceptance of License & Verification of System and configuration requirements
1. `http://[ServerAddress]/testlink/`にアクセス
2. [New installation]をクリック
3. [I agree to the terms set out in this license.]にチェックを入れ、[Continue]をクリック
4. チェックが通っていれば[Continue]が現れる
5. [Continue]をクリック(Postgres、MSSQL、LDAPは今回使用しないのでFailedでも気にしない)

#### directory is writable Failed!
インストール時のチェックで以下のメッセージが表示された場合
`Checking if /var/www/html/testlink/gui/templates_c directory is writable (by user used to run webserver process)	Failed!`
`/var/log/audit/audit.log`を見ると該当する処理がdeniedされていたのでSELinuxが原因のよう。
とりあえず`permissive`で逃げておく。

### Definition of DB access
#### 以下を参考に値を設定

```
Database Type : "MySQL (5.0.3 and later)"
Database host : "localhost"
Database name : "testlink"
Table prefix : "" (optional)
Database admin login : root
Database admin password : "******"(設定したパスワード)
TestLink DB login : "******"(任意の値)
TestLink DB password : "******"（任意の値）
```
1. [Process TestLink Setup!]をクリック
2. セットアップが完了すると結果とメールを利用する場合の設定について表示される
3. [Testlink (using login name:admin / password:admin - Please Click Me!).]をクリック
4. ログイン画面に遷移する

### 後始末
#### ログイン画面に以下のメッセージが表示されている。

```
There are security warnings for your consideration. See details on file: /var/testlink/logs/config_check.txt. To disable any reference to these checkings, set $tlCfg->config_check_warning_mode = 'SILENT';
```

#### 設定ファイルの修正

```php:/var/www/html/testlink/config.inc.php
...
$tlCfg->config_check_warning_mode = 'SILENT';
...
```

#### config_check.txtの中身を見てみる

```text:/var/testlink/logs/config_check.txt
Install directory should be removed!
You should change the default password for the 'admin' account!
Check following parameters of email feature:
tl_admin_email
from_email
return_path_email
smtp_host
```

- `rm -rf /var/www/html/testlink/install/`を実行
- TestLinkログイン後アカウント設定画面でadminのパスワードを変更
- メール関連のメッセージは適当な値を入れておけば表示されないらしい

# 参考
[Install testlink on CentOS](http://blog.codylab.com/install-testlink-on-centos/)
[Testlinkのインストール - Qiita](http://qiita.com/hc_isobe/items/b7fe615f4272dab52a25)
[TestLinkのインストール - Qiita](http://qiita.com/oh_rusty_nail/items/0c5b4678aa601a2dd96b)