2017-05-03 1 views
0

laravel 5.4 의 로그인 페이지에 테스트 케이스를 작성하려고합니다. 내 코드는 다음과 같습니다.Laravel 5.4 로그인 테스트 케이스가 잘못된 상태 코드를 제공합니다.

테스트/단위/LoginTest.php

<?php 

namespace Tests\Unit; 

use Tests\TestCase; 
use Illuminate\Foundation\Testing\WithoutMiddleware; 
use Illuminate\Foundation\Testing\DatabaseMigrations; 
use Illuminate\Foundation\Testing\DatabaseTransactions; 

class LoginTest extends TestCase 
{ 
    /** 
    * A basic test example. 
    * 
    * @return void 
    */ 
    public function testURL() 
    { 
     $response = $this->call('GET','/login'); 
     $this->assertEquals(200,$response->status()); 
    } 

    public function testBlankFields(){ 
     $response = $this->get('/login'); 
     $response->assertStatus(200); 
     $response->assertSee('User Login'); 
    } 

    public function testWrongValues(){ 
     $response = $this->post('/login',['email'=>'[email protected]', 
                'password'=>'Brijesh']); 
     $response->assertStatus(401); 
     $response->assertRedirect('/login'); 


    } 
} 

내가 잘못 상태 코드 (302) 대신 401

enter image description here

사람이 말할 수있는 무엇입니까 이미지 아래 참조 나 어디에 부족한가?

과 사람이 laravel 5.4에서 테스트 케이스를 작성하는 좋은 방법을 알고 있다면 다음 제가 혼동 아주하고 알려 주시기 바랍니다.

+0

부탁하는 컨트롤러 메서드로 질문을 업데이트 할 수 있습니까? –

+0

inbuilt 인증을 사용하고 있습니다. laravel 5.4 –

답변

0

응답 코드 302 리디렉션이 주어진 때의 Laravel에서 일반적으로 사용되는 응답 코드 인 (http://http.cat/302) "발견"에 대응 해 주셔서 감사합니다. 그래서, 무슨 일이 일어나는가 당신은 리디렉션되고 있습니다.

원하는 경우이 값을 JSONResponse으로 만들 수 있습니다. 조금만 변경하면됩니다.

+0

심지어 같은 상태입니다. –

+0

@ BrijeshDubey가 명시한대로 리디렉션 –

+0

에 대한 코드가 발행되면 testWrongValues ​​()에 쓰는 것을 도와주세요.이 방법은 이메일과 비밀번호를 확인합니다. 상태가있는 동일한 페이지로 리디렉션이 잘못되었습니다. –