【TestLink】安裝TestLink(使用Docker)

TestLink 是個 open source的軟體測試管理系統( test management system),可以管理測試計畫(test plan)、測試案例(test case),進行測試並且產生報告。本系列會簡單介紹TestLink的使用。

本篇會教學如何用Docker安裝TestLink。


環境:

  • Docker:Docker version 20.10.7, build f0df350

簡介TestLink

在與QA前輩聊天時,有介紹在軟體測試中,需要有工具進行管理,方便自動化記錄與快速產生報告。如果用Excel或是google sheet管理,很難重複使用,也很難進行管理與產生報告,甚至無法把在第三方測試完的報告回填。因此前輩建議可以使用測試管理工具,像是TestRail。由於對於軟體測試不熟,才剛深入接觸,如果直接使用TestRail可能會浪費資源,因此在網路上找其他方案,就看到一個開源的系統:TestLink。

TestLink和TestRail都是測試管理工具,可以建立與管理測試計畫(test plan)、測試案例(test case),根據需求組合不同的測試案例成為不同的測試計畫。可進行測試與記錄,並且快速的產生錯誤報告。看一些文章說明,還可以跟專案管理工具,如Jira、 Redmine,還有一些系統如Gitlab的測試結果回填,可以把測試、專案與開發一同合作,比使用試算表等工具更加方便。

和TestRail相比,TestLink是簡易版,畫面也沒有那麼精美。但如果只是小規模的使用,是綽綽有餘。


安裝教學

前提:系統中已經安裝好Docker

下載image

會使用Docker的原因是,不用設定太多環境變數,拿來就直接使用,因為沒有需要什麼客製化的設定,所以就拿別人做好的來用囉~

步驟如下:

  • 取得 Docker Compose 的設定檔
curl -sSL https://raw.githubusercontent.com/bitnami/bitnami-docker-testlink/master/docker-compose.yml > docker-compose.yml
  • 執行docker
docker-compose up -d

但是卻發生錯誤:

Starting tonywu_mariadb_1 ... done
Starting tonywu_testlink_1 ... error

ERROR: for tonywu_testlink_1  Cannot start service testlink: Ports are not available: listen tcp 0.0.0.0:80: bind: address already in use

ERROR: for testlink  Cannot start service testlink: Ports are not available: listen tcp 0.0.0.0:80: bind: address already in use
ERROR: Encountered errors while bringing up the project.

仔細看:tcp 0.0.0.0:80: bind: address already in use

原來是因為我的port 80apache拿去當網頁伺服器,所以無法直接執行預設的環境,需要改docker-compose.yml內的參數。

  • 進入:/Users/eyelash/(這個檔案的位置)可以找到這個檔案,內容如下:(可參考:github
version: '2'
services:
  mariadb:
    image: docker.io/bitnami/mariadb:10.3
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
      - MARIADB_USER=bn_testlink
      - MARIADB_DATABASE=bitnami_testlink
    volumes:
      - 'mariadb_data:/bitnami/mariadb'
  testlink:
    image: docker.io/bitnami/testlink:1
    ports:
      - '80:8080'
      - '443:8443'
    environment:
      - TESTLINK_DATABASE_HOST=mariadb
      - TESTLINK_DATABASE_PORT_NUMBER=3306
      - TESTLINK_DATABASE_USER=bn_testlink
      - TESTLINK_DATABASE_NAME=bitnami_testlink
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - 'testlink_data:/bitnami/testlink'
    depends_on:
      - mariadb
volumes:
  mariadb_data:
    driver: local
  testlink_data:
    driver: local
  • 修改連結的port,把80改成81
image: docker.io/bitnami/testlink:1
    ports:
      - '80:8080'
      - '443:8443'

改成:

image: docker.io/bitnami/testlink:1
    ports:
      - '81:8080'
      - '443:8443'
  • 重新執行
docker-compose up -d

他會說我們的資料已經過期,因為我們剛剛有更新檔案。

然後他就重新建立我們的testlink。

因此Volumes就會有新的卷(Volume)出來囉:


 

之前的Containers中,有一個是失敗的圖示:


 

現在變成好的囉,而且執行在81


 


 


 


登入

安裝好後,一定要試看看能不能用,因此我們就進行測試。
直接輸入:user/ bitnami,這是一開始幫我們設定好的,這樣就可以順利進去囉~

User and Site configuration


* APACHE_HTTP_PORT_NUMBER: Port used by Apache for HTTP. Default: 8080
* APACHE_HTTPS_PORT_NUMBER: Port used by Apache for HTTPS. Default: 8443
* TESTLINK_USERNAME: TestLink application username. Default: user
* TESTLINK_PASSWORD: TestLink application password. Default: bitnami
* TESTLINK_EMAIL: TestLink application email. Default: user@example.com
* TESTLINK_LANGUAGE: TestLink default language. Default: en_US
* TESTLINK_SKIP_BOOTSTRAP: Whether to perform initial bootstrapping for the application. Default: no
Use an existing database


* TESTLINK_DATABASE_HOST: Hostname for MariaDB server. Default: mariadb
* TESTLINK_DATABASE_PORT_NUMBER: Port used by MariaDB server. Default: 3306
* TESTLINK_DATABASE_NAME: Database name that TestLink will use to connect with the database. Default: bitnami_testlink
* TESTLINK_DATABASE_USER: Database user that TestLink will use to connect with the database. Default: bn_testlink
* TESTLINK_DATABASE_PASSWORD: Database password that TestLink will use to connect with the database. No defaults.
* ALLOW_EMPTY_PASSWORD: It can be used to allow blank passwords. Default: no

 


參考資料:

~Copyright by Eyelash500~

IT技術文章EY*研究院
iT邦幫忙eyelash*睫毛
Blog睫毛*Relax
Facebook睫毛*Relax