2014-09-04 45 views
1

返回假設我有一個看起來像這樣的控制方法:斷言特定視圖來自控制器航線

public function someRoute() 
{ 
    if(some condition) { 
     return View::make('view1'); 
    } 

    return View::make('view2'); 
} 

我怎麼會在我的單元測試斷言,而不是view2view1返回?一位同事提到,如果我可以將HTML響應作爲字符串獲得,那麼我可以僅使用PHPUnit的assertRegExp來對付返回的HTML,以匹配僅在view1中找到的給定字符串,但這對我來說看起來並不正確。

有沒有更好的方法?更深層次的問題可能是我應該甚至需要擔心在單元測試中返回哪個視圖,或者我應該只是$this->assertResponseOk()

回答

2

你混合與驗收測試單元測試,所以你有兩個選擇:

1)分割的測試單元和驗收,並使用像Codeception一個工具來幫助你做驗收,這是方式更優雅比PHPUnit更適合這種測試。使用Codecption,您可以執行如下操作:

$I->amOnPage('/someUrl'); 

$I->see('John Doe'); 

2)做你的朋友告訴你要做的事。

相關問題