2015-09-21 75 views
1

我正在使用Laracasts \ Integrated庫來測試我的Web應用程序。我有一個表格是這樣的:使用Laracasts Integrated選擇多個選項

<select multiple name="resource[]"> 
<option value="Coal">Coal</option> 
<option value="Another">Aluminum</option> 
. 
. 
</select> 

我的測試情況是:

$this->select('resource[]' , ['Coal' , 'Another']); 

我得到錯誤:

Symfony\Component\CssSelector\Exception\SyntaxErrorException: Expected identifier│ or "*", but <delimiter "]" at 11> found. 

請幫助我。

+0

,你在哪裏,就把這行?這個'持有什麼? [哪個對象]作爲laravel不支持'html' /'form'類,你需要遵循本指南 - [Laravel Collective - Forms&HTML](http://laravelcollective.com/docs/5.1/) html)能夠做這樣的事情。 – Gal

+0

我正在使用Laracasts/Integrated Library進行測試..(https://github.com/laracasts/Integrated).. ... 我正在測試一個網站,我需要做一些測試用例: public function make_new_contract() $ this-> select('resource []',['Coal','Another']); –

+0

確保您使用的是最新版本的軟件包,並檢查'src/Extensions/Laravel.php'中的'makeRequestUsingForm'方法是否類似[處理窗體中的子數組](https://github.com/laracasts/集成/提交/ 93cf561285d834bbd4c0063a21cc1956c7e757dc)如果不工作,你可以試試這個推理 - [Laravel 5.1 - 測試一個多選擇框](http://stackoverflow.com/a/32231264/3208719) – Gal

回答

0

解決方案,我得到的幫助下加:

我的測試用例:

/**@test*/ 
public function add_new() 
{ 
$this->storeInput('resource', ['6PGM+Au' ,'Coal'], true) 
     ->andPress('Submit') 
} 


    public function storeInput($element, $text, $force = false) 
    { 
     if ($force) { 
      $this->inputs[$element] = $text; 
      return $this; 
     } 
     else { 
      return parent::storeInput($element, $text); 
     } 
    }