0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

テスト管理ツール SquashTM の調査

Last updated at Posted at 2025-11-10

はじめに

SquashTM インストール からリンクする 前提条件 ページによると、SquashTM をインストールするための要件は以下のとおり

CPU RAM HDD
Minimum 1 core 1 GB dedicated 1 GB
Recommended 2 cores 2 GB dedicated 5 GB
Minimum* Recommended
Operating System Linux: Debian 12, Ubuntu 22.04, Red Hat Enterprise Linux 8 Windows 10 Debian 12
Java Runtime Environment JRE** 21 JRE** 21
Database PostgreSQL 15 MariaDB 10.7 PostgreSQL 17
  • means that later versions can also be used.
    ** any JRE compatible with Java SE (Oracle JRE, Eclipse Temurin, Amazon Corretto, Red Hat OpenJDK…) can be used.

2025年11月現在、動作検証した環境は以下の通り。

  • Amazon Linux 2023
  • SquashTM 12.0.0
  • Java 21
  • PostgreSQL 17.6

インスタンスの準備

お試し用のEC2インスタンスを作成する。稼働させてみると、t3.smallあたりのインスタンスでは厳しく、t3.medium以上は必要そう。

インスタンスクライアントでインスタンスに接続する。

必要なパッケージのインストール

SquashTM の稼働に必要なパッケージをインストールする。

sudo yum install java-21-amazon-corretto postgresql17 postgresql17-server potgresql17-contrib

Maven は yum でインストールされるバージョンが古いため、以下のコマンドで導入する。

cd ~

# ダウンロード
curl -L -O https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.tar.gz

# 展開
tar xvfz apache-maven-3.9.11-bin.tar.gz

# PATHの設定
export PATH=/home/ec2-user/apache-maven-3.9.11/bin:$PATH

# バージョン確認
mvn -v

PostgreSQL の初期設定

インストールされたことを確認する。

$ psql --version
psql (PostgreSQL) 17.6

データベースを初期化する。

sudo postgresql-setup initdb

ログにエラーが出力されていないことを確認する。

sudo cat /var/lib/pgsql/initdb_postgresql.log

サービスを起動する。あわせて自動起動に設定する。

sudo systemctl start postgresql
sudo systemctl enable postgresql

OSユーザー postgres のパスワードを設定する。

sudo passwd postgres

PostgreSQL に接続し、SquashTM 用のデータベースを作成する。

sudo -u postgres psql

PostgreSQL に接続したら、以下を実行する。

CREATE DATABASE squashtm WITH ENCODING='UTF8';
CREATE USER "squash-tm" WITH PASSWORD 'password';
ALTER DATABASE squashtm OWNER TO "squash-tm";
GRANT CONNECT ON DATABASE squashtm TO "squash-tm";

exit

SquashTM から JDBC 接続できるように、IPv4 接続を許可する。postgresql.conf を編集する。
listen_addresses = 'localhost' の行がコメント(先頭に#)になっているので、コメントを外して(#を削除して)有効にする。

sudo vi /var/lib/pgsql/data/postgresql.conf

同様に pg_hba.conf を修正する。

sudo vi /var/lib/pgsql/data/pg_hba.conf

IPv4 local connections の行を編集する。

# IPv4 local connections:
#host    all             all             127.0.0.1/32            ident
host    all             all             0.0.0.0/0               md5

設定を反映させるため、PostgreSQL を再起動する。

sudo systemctl restart postgresql

squashtm データベースに squash-tm ユーザーで接続できることを確認する。

psql squashtm squash-tm

exit

SquashTM のインストール

ダウンロードのページから tar.gz 形式でダウンロードしてインストールする。
https://tm-en.doc.squashtest.com/latest/downloads.html

# /optにインストールする
cd /opt

# 現時点(2025/11/10)の最新版をダウンロード
sudo curl -L -O https://nexus.squashtest.org/nexus/repository/public-releases/tm/core/squash-tm-distribution/12.0.0.RELEASE/squash-tm-12.0.0.RELEASE.tar.gz

# 展開する
sudo tar -zxvf squash-tm-12.0.0.RELEASE.tar.gz.tar.gz

# OS に squash-tm ユーザー追加
sudo useradd --system --user-group --home /opt/squash-tm squash-tm

# ファイルの所有者を squash-tm に変更
sudo chown -R squash-tm:squash-tm /opt/squash-tm

# startup.sh ファイルに実行パーミッション付加
sudo chmod +x /opt/squash-tm/bin/startup.sh

# squash.tm.cfg.properties を編集する
sudo vi /opt/squash-tm/conf/squash.tm.cfg.properties

squash.tm.cfg.properties に PostgreSQL の JDBC 接続を設定する。

spring.profiles.active = postgresql
spring.datasource.url = jdbc:postgresql://localhost:5432/squashtm
spring.datasource.username = squash-tm
spring.datasource.password = password

アプリケーションを起動する。

cd /opt/squash-tm/bin
sudo -u squash-tm ./startup.sh &
#nohup ./startup.sh &

ブラウザーで http://:8080/squash を開いて確認する。

終了は、

# プロセス番号確認
ps -ef | grep starup.sh

# 終了
kill -9 <プロセス番号>

日本語化してみる

やはり日本語で使いたい、ということで、日本語リソースを追加してみた。ソースをクローンしてビルドする。

# ホームディレクトリで作業する
cd ~

# git clone
git clone https://gitlab.com/naofumi/squashtest-tm-staging.git

cd squashtest-tm-staging

# feature/japanese-v12 ブランチをチェックアウト
git checkout feature/japanese-v12

export PATH=/home/ec2-user/apache-maven-3.9.11/bin:$PATH

# ビルド
mvn clean
mvn package -DskipTests

ビルドが完了したら、war モジュールをアプリケーションサーバーに配置する。


cd ~/squashtest-tm-staging

sudo cp ./tm/tm.web/target/tm.web-12.0.0-SNAPSHOT.war /opt/squash-tm/bundles/squash-tm.war

アプリケーションを起動する。

cd /opt/squash-tm/bin
sudo -u squash-tm ./startup.sh &
#nohup ./startup.sh &

squash-tmは比較的アクティブに更新されているようです。
現在v12ですが、上記でダウンロードされるバージョンがv13に更新された場合は、v12をビルドして更新しようとするとアプリのバージョンが、データベースのバージョンより古いということで起動できなくなります。
また、アプリのバージョンが上がった場合は、startup.sh実行後にデータベースのスキーマ更新を行うかのプロンプトが表示され、y を入力する必要があります。

画面はこんな感じです。

image.png

参考

テスト管理システム SquashTMの調査 2025年版
https://zenn.dev/mima_ita/articles/196a654f4b6f00

Squash Documentation
https://tm-en.doc.squashtest.com

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?