1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Laravel】ユーザ認証/ユニットテスト

Posted at

こちらの記事は以下の書籍を参考にアウトプットとして執筆しました。
PHPフレームワーク Laravel入門 第2版

ユーザ認証

Laravel標準装備の認証機能「Auth」について

ユーザ認証は以下の機能のこという

  • ユーザ登録
  • ログイン、ログアウト
  • ユーザ情報の管理などのホーム画面
  • ログインしていないユーザのアクセス制限
  • 現在のユーザのログイン状態などを調べるプログラム

これらの機能はLaravelのAuthクラスを使うと一括で実装できる。

Authのセットアップ

Auth機能はLaravelに標準で要されておらず、以下の2つのインストールが必要

名前 説明
laravel/ui composerでインストール
npm Node.jsをインストール

インストール手順は省略

Userモデルクラス

AuthはDBにusersテーブルを作り、そこにユーザ情報を保存する。

Authの各種メソッド

Auth::user

ログインしているユーザのモデルインスタンス(Usersモデルクラス)を返す。
ログインしていなければnullが返る

Auth::check

現在アクセスしているユーザがログインしているかどうかを確認

返り値 意味
true ログインしている
false ログインしていない

ログインページ

ログインページはAuthが自動生成する。

ユニットテスト

テスト機能の基本となる

ユニットテスト

アプリ開発におけるプログラムの正常性確認をユニットテストという。
単体テストとも呼ばれ、PHPUnitを利用してテストする。

ユニットテストではテストのスクリプトファイを生成、しそこにテスト内容を書く。
ExampleTest.phpを参考にテスト処理を生成する。

クラス名は冒頭にtestが入っていればいい

テスト用DBを用意する

本番のDBをテストに使用するのは危険
テスト用のDBを作成しておく。

その後ダミーレコードなどを入れておく。

phpunit.xml

PHPUnitの設定に使用するDBを追記する
SQLiteはファイルパス、MySQLはDB名でOK

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?