iT邦幫忙

2022 iThome 鐵人賽

DAY 2
0

Medium 清新閱讀版連結

下載與設定 Laradock

首先,讓我們在Home資料夾下,將 Laradock 下載下來:

cd ~ && git clone https://github.com/Laradock/laradock.git Laradock

將 Laradock 下載回來後,切換到 Laradock 資料夾下,從樣板複製一份 .env 檔:

cd ~/Laradock
cp .env.example .env

接著開啟 .env 檔,有幾個Key值需要關注:

  1. APP_CODE_PATH_HOST:專案資料夾,指向我們的專案目錄,這邊輸入 ../PHPUnit-test(稍候將在這個地方建立 Laravel 專案)

    # Point to the path of your applications code on your host
    APP_CODE_PATH_HOST=../PHPUnit-test
    
  2. DATA_PATH_HOST:資料路徑,當 Laradock的資料庫容器啟動時,會在這個資料夾下建立相關檔案及資料夾,預設值是 ~/.laradock/data,基本上保持預設值即可。

    # Choose storage path on your machine. For all storage systems
    DATA_PATH_HOST=~/.laradock/data
    

    雖然乍看之下,此預設值會在Home資料夾下建立 .laradock 資料夾,但我實際測試時發現,Laradock 會在其所在資料夾下,建立一個名為 ~ 的資料夾,或許是一個神奇的Bug?

  3. PHP_VERSION:PHP版本號,預設為 8.0 ,這裡我們保持預設值

    ### PHP Version ###########################################
    
    # Select a PHP version of the Workspace and PHP-FPM containers (Does not apply to HHVM).
    # Accepted values: 8.0 - 7.4 - 7.3 - 7.2 - 7.1 - 7.0 - 5.6
    PHP_VERSION=8.0
    

啟動 Laradock Workspace 容器

~/Laradock 目錄下,輸入以下指令,啟動 workspace 容器:

#~/Laradock
docker-compose up -d workspace

workspace 容器是 Laradock 的一個核心容器,可以在這裡執行 composer,之後我們也將在這個容器內執行 PHPUnit

在啟動 workspace 容器的同時, 同時會建立在前面設定的 .env key值: APP_CODE_PATH_HOST 所指向的資料夾(如果原本就已存在,則不會建立)。

進入 Workspace 容器

啟動 workspace 容器後,接著我們要進入此容器內進行後續動作。

剛啟動的 workspace 容器,預設名稱是 laradock-workspace-1 ,讓我們進入此容器:

docker exec -it laradock-workspace-1 bash

如果執行以上指令時,找不到該容器,顯示 Error: No such container: 時,可先用以下指令查詢已啟動的 Docker 容器:

docker ps -a

初始化 Laravel 專案資料夾

進入 workspace 容器後,接著讓我們來初始化專案資料夾吧!
(這邊提醒一下,進入容器後,會看到目前所在位置是 /var/www ,對應到本機的路徑就是 ~/PHPUnit-test ,也就是前面 APP_CODE_PATH_HOST 所指向的路徑)

接著我們使用 composer 來初始化 Laravel 專案資料夾:

composer create-project laravel/laravel .

接著就會開始安裝 Laravel 到 ~/PHPUnit-test 資料夾了,這部分會花點時間,可以去泡杯咖啡再回來。

泡完咖啡後,差不多也完成了,應該會到類似以下截圖的畫面:

在初始化 Laravel 專案時,會一併安裝 PHPUnit ,讓我們來測試一下:

./vendor/bin/phpunit

剛裝好的 PHPUnit ,已預寫好2個測試,因此應該會看到類似以下截圖的畫面:

到這邊,我們已經完成環境建置了,給自己一個鼓勵吧!

明天來撰寫第一個測試。

參考資料:

  1. https://laradock.io/
  2. https://laravel.com/docs/9.x

上一篇
序:初遇PHPUnit
下一篇
初試啼聲
系列文
自動化測試大作戰31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言