ホームページ  >  記事  >  バックエンド開発  >  Laravel単体テストでリクエストを実行する方法

Laravel単体テストでリクエストを実行する方法

WBOY
WBOYオリジナル
2016-09-02 08:57:041036ブラウズ

リーリー

検証が失敗した場合、$response->getStatusCode() を使用すると常に 302 になりますが、これは正常です。
しかし、たとえば $data['a'] = 'a' の場合、桁数が 3 桁未満で、そのプロンプト情報を取得したいのですが、どうすれば取得できますか?
私はテストが初めてなので、助けてください、ありがとう!

返信内容:

リーリー

検証が失敗した場合、$response->getStatusCode() は常に 302 になりますが、これは正常です。
しかし、たとえば $data['a'] = 'a' の場合、桁数が 3 桁未満で、そのプロンプト情報を取得したいのですが、どうすれば取得できますか?
私はテストが初めてなので、助けてください、ありがとう!

mwjmt mg

このテストはとても奇妙です..
本当にエラー メッセージを取得したい場合は、Session::get を使用できます。検証が失敗した後、エラー オブジェクトはセッションにフラッシュ保存されるためです。

たとえば、あなたの状況では:

リーリー

getBag获取的是一个 MessageBag 对象,可以用 get 取得所有校验错误消息,或者用 first 最初のエラーメッセージを取得します。 API ドキュメントについては、http://laravel-china.org/api/...

を参照してください。

---アップデート

一般に、このようなテストは少なくとも 2 つの部分に分割する必要があります:
最初に Validator を使用して検証部分をテストします。たとえば

リーリー

次に、その背後にあるロジックをテストするためのテスト メソッドを作成します。

Laravel でのリクエストのテストについては、フレームワークがテスト用の多くのメソッドを提供しています。これは基本的にリクエストとレスポンスのすべてのテストをカバーしています。他の方法を使用して、ユーザー認証のテスト、Cookie セッションのテスト、データベースのテスト、キューのテストなど、他の部分をテストします。 IlluminateFoundationTestingConcernsMakesHttpRequests

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。