The Best Fluffy Pancakes recipe you will fall in love with. Full of tips and tricks to help you make the best pancakes.

Laravel Test 環境、測試中的auth token處理

根目錄下有個phpunit.xml的檔案,其中   

<php>

        <env name=”APP_ENV” value=”testing”/>

        <env name=”APP_URL” value=”http://127.0.0.1″/>

        <env name=”APP_URL_OAUTH” value=”http://127.0.0.1/aaa”/>

        <env name=”BCRYPT_ROUNDS” value=”4″/>

        <env name=”CACHE_DRIVER” value=”array”/>

        <!– <env name=”DB_CONNECTION” value=”sqlite”/> –>

        <!– <env name=”DB_DATABASE” value=”:memory:”/> –>

        <env name=”DB_CONNECTION” value=”mysql_testing”/>

        <env name=”DB_DATABASE” value=”workdj_backend_testing”/>

        <env name=”MAIL_MAILER” value=”array”/>

        <env name=”QUEUE_CONNECTION” value=”sync”/>

        <env name=”SESSION_DRIVER” value=”array”/>

        <env name=”TELESCOPE_ENABLED” value=”false”/>

    </php>

<env name=”APP_ENV” value=”testing”/> 對應到 測試環境中的.env檔案名稱

若以上述設定則是 .env.testing

但也可以不新增一個.env.testing檔案出來,單純使用其他諸如

        <env name=”APP_URL” value=”http://127.0.0.1″/>

的設定值來設定 APP_URL 在測試環境中的值

原本卡了幾天的問題,終於在這篇文章找到靈感,並請gpt修改後實作成功

https://laracasts.com/discuss/channels/testing/passport-personal-access-token-unit-test

測試範例

AuthHelper.php

直接在資料庫中使用factory建立一筆user資料,並使用passport 提供的 ClientRepository 類別來建立對應secret跟token

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *