顯示具有 Composer 標籤的文章。 顯示所有文章
顯示具有 Composer 標籤的文章。 顯示所有文章

2018年10月19日 星期五

碼農工作日誌-在 Linux 上安裝 Composer 並且設成全域執行、看 Linux 服務列表、全新主機要執行 PHP 測試需要安裝

👉在 Linux 上安裝 Composer 並且設成全域執行

Composer 作為 PHP 上套件相依的管理套件,如果和 PHP 設成可以全域執行,這樣在命令列上的指令就會比較減少,並且也不需要每個專案都下載 composer.phar。首先,先把下載安裝的過程建立成 sh 檔 :

#!/bin/sh

EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)"
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
ACTUAL_SIGNATURE="$(php -r "echo hash_file('SHA384', 'composer-setup.php');")"

if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]
then
    >&2 echo 'ERROR: Invalid installer signature'
    rm composer-setup.php
    exit 1
fi

php composer-setup.php --quiet
RESULT=$?
rm composer-setup.php
exit $RESULT

然後,執行 sh 檔之後,完成下載 composer.phar,再來把檔案搬到執行目錄下 :

$ mv composer.phar /usr/local/bin/composer

再試試設定是否成功 :

$ composer -V
Composer version 1.7.2 2018-08-16 16:57:12

這樣就可以直接使用 Composer。


👉看 Linux 服務列表

$  service --status-all

這樣會列出全部服務

$ service docker status

這樣會列出 docker 服務的狀態


👉全新主機要執行 PHP 測試需要安裝
  • PHP
  • Composer
  • Codeception
  • Monolog
  • Java JDK
  • Selenium 由主機直接下載
  • ChromeDriver 由主機直接下載
  • Chrome browser 尤其在 Linux 主機要記得,因為預設瀏覽器是 Firefox

2018年10月3日 星期三

Java Develop Coder 開始 PHP Test Coder 的生活_2018/10/3 Day24

今天開始建置比較完整的測試案例。

👉Composer
官網介紹是 PHP 的相依管理的套件,應該就像 Gradle 之類的套件吧! 之前安裝都是在專案內,這次就把它建置在 Global,各個專案在使用上就不需要一直去下載,方便得多。

首先依照指示下載 composer.phar
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

分別執行每一行 command,完成後會看到 composer.phar 會被下載到目前位置,然後再搬移檔案到公用執行的資料夾。

$ mv composer.phar /usr/local/bin/composer

之後在命令列執行 composer,就可以使用。不行的話,請參考官網下方附註。

👉Codeception
官網介紹可以在 PHP 語言架構上進行所有(幾乎)的測試,包含常用的框架。所以測試專案需要安裝這個套件。用上面裝好的 Composer 來安裝,在專案的目錄下執行

$ composer require "codeception/codeception" --dev

這次專案只需要進行接受性測試,所以用另一種方式初始化

$ php codecept init acceptance

再來就會有問答選項來完成專案的建置,完成後用命令列來生成 Codeception Test Case(cest)

$ php codecept generate:cest acceptance Xxxx

這樣就會在 tests 的目錄下生成 XxxxCest 的類別,執行時,Codeception 也會去找 cest 類別執行。然後就開始寫寫寫的測試生涯。