2016-10-12 39 views
1

我正在使用Laravel測試來測試表單。在使用Laravel進行測試時是否啓用了JS?

我試圖用$this->select('value','selectName')設置上選擇一個選項,但這個選擇填充頁面上使用以下腳本:

<script> 
    for(var i = 1940; i < 2020; i++){ 
     document.write('<option value="'+i+'">'+i+'</option>'); 
    } 
</script> 

但是當我運行測試,我得到:

InvalidArgumentException: Input "year" cannot take "1992" as a value (possible values:). 

當我只是使用html標記的選項,但一切運行良好,所以我猜JS沒有啓用或解析後運行。

這是預期的行爲?我能做些什麼來測試它與JS啓用?

回答

3

由於JavaScript是客戶端腳本語言,基本上在運行時在瀏覽器中執行,因此Laravel無法在測試中使用它。這就是說有一些擴展/司機laravel可以啓用此功能。你可以看看Selenium。

下面是關於這一主題閱讀的好地方: https://laracasts.com/discuss/channels/testing/has-anyone-tried-laravel-integrated-package-in-laravel-52

+0

嗯,顯然事實並非如此。所以這是答案。感謝您的鏈接。 – user2430929

相關問題