PHPUnit 自動化測試大作戰【CH02】

閱讀時間約 4 分鐘

下載與設定 Laradock

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

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

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

cd ~/Laradock

cp .env.example .env

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

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

# Point to the path of your applications code on your host 

APP_CODE_PATH_HOST=../PHPUnit-test

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?

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

本系列文章目錄

avatar-img
8會員
279內容數
歡迎來到 WilliamP 的沙龍天地,在這裡將與各位讀者探討各種主題,包刮高中數學題庫、PHP開發經驗、LINE聊天機器人開發經驗、書摘筆記等,歡迎交流!
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
WilliamP的沙龍 的其他內容
初遇自動化測試 在數年前,我剛從第一份工作離職,轉職到第二份工作, 新工作是在一個大集團的IT部門,職位是後端工程師。 當時集團正準備導入一個由子公司開發的微服務系統, 使用的技術是PHP 8 及 Laravel 9 因為該系 統在子公司運作得不錯, 因此集團高層想將它擴展成,全集團都可使用的規模
初遇自動化測試 在數年前,我剛從第一份工作離職,轉職到第二份工作, 新工作是在一個大集團的IT部門,職位是後端工程師。 當時集團正準備導入一個由子公司開發的微服務系統, 使用的技術是PHP 8 及 Laravel 9 因為該系 統在子公司運作得不錯, 因此集團高層想將它擴展成,全集團都可使用的規模
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
GitLab為程式碼管理倉庫,且從8.0開始提供CI/CD。 安裝 更新套件索引 sudo apt update 安裝postfix sudo apt install ca-certifi​cates curl openssh-server postfix 切換目錄 cd /t
Thumbnail
獲取Image docker pull 查看Image docker images 可以查看REPOSITORY、TAG、IMAGE ID、CREATED與SIZE。 創建Image docker build [OPTIONS] PATH | URL | - 上傳Imag
※ 關於Git (二) 請寫下從 Github 上複製一個專案下來,做一次遞交,然後推上去會用到的所有 git 指令。 複製專案(Clone) markdown-here: git clone https://github.com/adam-p/markdown-here.git 如果在訊息
Thumbnail
前言 大家好上次我們教了如何建立自己的 Docker Image,今天我們要來教怎麼把自己做好的 Docker Image 上傳到 Docker Hub,如果以後自己在公司有搭建 Docker Registry,也可以用同樣方式上傳到公司的 Docker Registry 私有倉庫 登入 Doc
Thumbnail
前言 大家好上次我們教了如何下載 Docker Image 使用,今天我們要教如何產出自己的 Image,這次會使用一個 Dockerfile 範例,自行打包 Docker Image,初步練習使用 Docker 指令 下載 Dockerfile 教學檔案 在這裡我已經幫忙寫好一個 Docke
Thumbnail
當你安裝完docker,並且設定好所有相關程序後。你正要使用docker去進行操作,讓專案可以在容器哩,方便平台移轉、備份、共用等等等等等;如果你遇到CUDA docker runtime 的問題時,這篇正適合你閱讀。 開始之前,如果你要參考怎麼安裝docker,設定docker環境,請參考:
Thumbnail
前言 上次講到 Dockerfile、DockerImage、Docker Container 他們之間的關係,今天我們要來熟悉 Docker Image 如何使用,教你如何抓取雲端上的 Docker Image, Docker Image 下載來源 當我們今天要要使用 Docker Imag
將使用者加入Docker群組 sudo groupadd docker sudo usermod -aG docker $USER 設定開機自動啟動Docker服務 sudo systemctl enable docker sudo systemctl start docker 試跑
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
GitLab為程式碼管理倉庫,且從8.0開始提供CI/CD。 安裝 更新套件索引 sudo apt update 安裝postfix sudo apt install ca-certifi​cates curl openssh-server postfix 切換目錄 cd /t
Thumbnail
獲取Image docker pull 查看Image docker images 可以查看REPOSITORY、TAG、IMAGE ID、CREATED與SIZE。 創建Image docker build [OPTIONS] PATH | URL | - 上傳Imag
※ 關於Git (二) 請寫下從 Github 上複製一個專案下來,做一次遞交,然後推上去會用到的所有 git 指令。 複製專案(Clone) markdown-here: git clone https://github.com/adam-p/markdown-here.git 如果在訊息
Thumbnail
前言 大家好上次我們教了如何建立自己的 Docker Image,今天我們要來教怎麼把自己做好的 Docker Image 上傳到 Docker Hub,如果以後自己在公司有搭建 Docker Registry,也可以用同樣方式上傳到公司的 Docker Registry 私有倉庫 登入 Doc
Thumbnail
前言 大家好上次我們教了如何下載 Docker Image 使用,今天我們要教如何產出自己的 Image,這次會使用一個 Dockerfile 範例,自行打包 Docker Image,初步練習使用 Docker 指令 下載 Dockerfile 教學檔案 在這裡我已經幫忙寫好一個 Docke
Thumbnail
當你安裝完docker,並且設定好所有相關程序後。你正要使用docker去進行操作,讓專案可以在容器哩,方便平台移轉、備份、共用等等等等等;如果你遇到CUDA docker runtime 的問題時,這篇正適合你閱讀。 開始之前,如果你要參考怎麼安裝docker,設定docker環境,請參考:
Thumbnail
前言 上次講到 Dockerfile、DockerImage、Docker Container 他們之間的關係,今天我們要來熟悉 Docker Image 如何使用,教你如何抓取雲端上的 Docker Image, Docker Image 下載來源 當我們今天要要使用 Docker Imag
將使用者加入Docker群組 sudo groupadd docker sudo usermod -aG docker $USER 設定開機自動啟動Docker服務 sudo systemctl enable docker sudo systemctl start docker 試跑
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc