# PHP Unit のテスト環境構築手順書 **関連リンク** [LN PHP Unit テスト実行方法](/QBO0E_4ARTaaQinDHhSGHQ) [LN テスト 会議議事録(今後つけていく)](/8HI_KJ_rT-ew0e0ezPFUhw) ## 概要 PHP のテスト用の実行環境の構築手順書を記載 ## 手順書 1. テスト用のユーザーDBを作成する まず、既存で動作済みのユーザーDB「listnavi_user_〇〇」を、「listnavi_user_test」で複製する。 複製したら、一度databaseの全テーブルを削除し、共有しているsqlファイルをインポートしてください。 2. .env.testing ファイルを用意 .env.testing ファイルを作成し、プロジェクトルートディレクトリへ配置 :::info 「USER_DB_CONNECTION=user_test」 辺りをそれぞれテスト用の環境に合わせて修正してください ::: ``` [.env.testing] APP_NAME=Listnavi APP_ENV=testing APP_KEY=base64:jqzdBAgBWVlYDZENIqzu6lFqCsOmfRVZz7btDA+dR2s= APP_DEBUG=true APP_URL=http://list-navigator.local # JTを使用するかどうか(true=使用する、false=使用しない) # JTが落ちたときに使用してください AUTH_USE=false LOG_CHANNEL=stack # デフォルトの接続先 DB_CONNECTION=user # マスターDB MASTER_DB_CONNECTION=master MASTER_DB_HOST=127.0.0.1 MASTER_DB_PORT=3306 MASTER_DB_DATABASE=listnavi_master MASTER_DB_USERNAME=listnavi_local MASTER_DB_PASSWORD=lnpass MASTER_DB_CHARSET=utf8mb4 MASTER_DB_COLLATION=utf8mb4_unicode_ci # ユーザーマスターDB USER_MASTER_DB_CONNECTION=user_master USER_MASTER_DB_HOST=127.0.0.1 USER_MASTER_DB_PORT=3306 USER_MASTER_DB_DATABASE=listnavi_user_master USER_MASTER_DB_USERNAME=listnavi_local USER_MASTER_DB_PASSWORD=lnpass USER_MASTER_DB_CHARSET=utf8mb4 USER_MASTER_DB_COLLATION=utf8mb4_unicode_ci # ユーザーDB # ホストとDB名は動的に変更されるため指定しない USER_DB_CONNECTION=user USER_DB_PORT=3306 USER_DB_USERNAME=listnavi_local USER_DB_PASSWORD=lnpass USER_DB_CHARSET=utf8mb4 USER_DB_COLLATION=utf8mb4_unicode_ci # プレディクトDB # ホストとDB名は動的に変更されるため指定しない PREDICT_DB_CONNECTION=predict PREDICT_DB_PORT=3306 PREDICT_DB_DATABASE=predict PREDICT_DB_USERNAME=listnavi_local PREDICT_DB_PASSWORD=lnpass PREDICT_DB_CHARSET=utf8mb4 PREDICT_DB_COLLATION=utf8mb4_unicode_ci # テスト用DB USER_DB_CONNECTION=user_test USER_TEST_DB_HOST=127.0.0.1 USER_DB_PORT=3306 USER_DB_USERNAME=listnavi_local USER_DB_PASSWORD=lnpass USER_DB_CHARSET=utf8mb4 USER_DB_COLLATION=utf8mb4_unicode_ci USER_TEST_DB_DATABASE=listnavi_user_test # Asterisk ASTERISK_DB_CONNECTION=asterisk ASTERISK_DB_HOST=127.0.0.1 ASTERISK_DB_PORT=3306 ASTERISK_DB_DATABASE=asterisk ASTERISK_DB_USERNAME=listnavi_local ASTERISK_DB_PASSWORD=lnpass ASTERISK_DB_CHARSET=utf8mb4 ASTERISK_DB_COLLATION=utf8mb4_unicode_ci # JudgeNaviDB JN_DB_CONNECTION=judge_navi JN_DB_HOST=127.0.0.1 JN_DB_PORT=3306 JN_DB_DATABASE=judge_navi JN_DB_USERNAME=listnavi_local JN_DB_PASSWORD=lnpass JN_DB_CHARSET=utf8mb4 JN_DB_COLLATION=utf8mb4_unicode_ci # 移行DB # DB名は設定しない MIGRATION_DB_CONNECTION=migration MIGRATION_DB_HOST=127.0.0.1 MIGRATION_DB_PORT=3306 MIGRATION_DB_USERNAME=listnavi_local MIGRATION_DB_PASSWORD=lnpass MIGRATION_DB_CHARSET=utf8mb4 MIGRATION_DB_COLLATION=utf8mb4_unicode_ci # ロールバックDB # DB名は設定しない ROLLBACK_DB_CONNECTION=rollback ROLLBACK_DB_HOST=127.0.0.1 ROLLBACK_DB_PORT=3306 ROLLBACK_DB_USERNAME=listnavi_local ROLLBACK_DB_PASSWORD=lnpass ROLLBACK_DB_CHARSET=utf8mb4 ROLLBACK_DB_COLLATION=utf8mb4_unicode_ci SESSION_DRIVER=memcached CACHE_DRIVER=memcached BUILD_VERSION=YYYYMMDD # 一時的なcsvの保存ディレクトリの絶対パス(未設定の場合プロジェクトのルートに作成) # TMP_CSV_DIRECTORY=csv # TMP_CSV_DIRECTORY=/csv # dev 検証用の .env # config/glo.php設定情報 # GLO_URL=https://10.0.2.2:8080/api # RETRY_MAX_TIMES=0 # RETRY_INITIAL_DELAY=2 # GLO_TOKEN=16|Qsy8QiNoJusVZK40UVKs9lGgDTbEFRkpen1nzt3P # VERIFY_SSLCERTS=false # ALIAS_NAME=LN # Chat Work API CHAT_WORK_API_ROOM_ID=238434469 CHAT_WORK_API_TOKEN=90db4ddf04572be8b480073aca6f7a01 # GLO stg環境!! GLO_URL=https://glo.scene-live.com/dev/api RETRY_MAX_TIMES=0 RETRY_INITIAL_DELAY=2 GLO_TOKEN=1|Y3K2vPRamt33463B7ctEvwy4CZ0MAIaejnt0QfZb VERIFY_SSLCERTS=false ALIAS_NAME=LN # # # Chat Work API CHAT_WORK_API_ROOM_ID=238434469 CHAT_WORK_API_TOKEN=461cb9f1ec40842f0cfa7b2e660ad9fe # OPのリアルタイム状況ファイルパス OP_SCREEN_INFO_PATH=/home/tmp/listnavi/operator/screen_information/listnavi_user_development ``` 3. テスト環境の設定を行う 作業をローカルで行う場合、事前にvirtual box の仮想環境のターミナルに入って行ってください。 ``` $ cd /home/slive/list-navigator # 新しいenv ファイル用に APP_KEYを作成 $ php artisan key:generate --env=testing ``` 5. テストの実行確認 上記正常に実行できていれば、テストの環境構築は済んでいるはずなので、実際にテストを実行し確認する。 ``` $ cd /home/slive/list-navigator # テストの実行(全テスト) $ vendor/bin/phpunit ``` 上記コマンド実行後テストが成功していれば終了です。 お疲れ様でした!:clap: ###### tags: `テスト` `php` `手順書`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up