Help us understand the problem. What is going on with this article?

【Laravel5.8】テストでLaravel外にリクエストを投げられない

Laravelのテストでは頻繁に$response = $this->get($url);とか書くと思いますが、実はこれ、実際にリクエストを送信してはいません。
内部で何かごちゃごちゃとやっていて、一見リクエストを送ったように見せかけてレスポンスを返してきています。

その実害が前起こったlaravel_sessionが取れないというものですが、他にも$_SERVER['REQUEST_URI']などの環境変数を直接使っているとテスト時に値が入ってこないので死にます。
まあ、そちらはRequest::getPathInfo()などを使うべきだということでしょう。

本題はここからで、実はgetやpostは、外部サーバにリクエストを飛ばすことができません。
$this->get('https://example.com/a/b');って打っても、ドメイン部分は完全に無視されてa/bに飛びます。
なんで。

さらにLaravelをサブディレクトリ運用している場合、その外側に行くこともできません。
Laravelをhttps://example.com/laravel/の中で運用していたとして、https://example.com/other/にすら行けないということです。
$this->get('https://example.com/other/foo/bar');とすると、実際はhttps://example.com/laravel/other/foo/barに行ってしまいます。
なんで。

内部リクエストではなく、実際に該当URLにHTTPリクエストを送る方法はないでしょうか。
URLの作成はMakesHttpRequestsHttpFoundation\Requestのあたりで行われているのですが、読んでも全く理解できませんでした。

Laravel Duskというパッケージはあるのですが、ちょっと思ったのと違います。
これはWeb画面を表示してテキストを入力してボタンを押してといったテストを行えるようになるヘッドレスブラウザというものです。

いや、そんな高機能な代物を求めてるわけじゃないんだ。
ただただ単に外部サーバにちょっくらGETしたいだけなんだ。

こういう場合どうするのがベストな方法なんだろうか?
やっぱGuzzleとか使って手動?

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away