我发现这一点:http://www.devcomments.com/Uploads-on-functional-test-for-REST-services-to189066.htm#filtered
但我不得不修改它一点点以让它使用Symfony的1.4工作。就形式而言,我引入了一个新的类“浏览器”,它扩展了'sfBrowser'和'TestFunctional',它扩展了'sfTestFunctional'。
浏览器:: uploadFile():
我添加的内容类型$类型参数,否则测试失败( '无效的mime-type')
public function uploadFile($fieldName, $filename, $type = '')
{
if (is_readable($filename))
{
$fileError = UPLOAD_ERR_OK;
$fileSize = filesize($filename);
}
else
{
$fileError = UPLOAD_ERR_NO_FILE;
$fileSize = 0;
}
$this->parseArgumentAsArray($fieldName, array('name' => basename($filename), 'type' => $type, 'tmp_name' => $filename, 'error' => $fileError, 'size' => $fileSize), $this->files);
return $this;
}
TestFunctional :: uploadFile ()
public function uploadFile($fieldName, $filename, $type = '')
{
$this->browser->uploadFile($fieldName, $filename, $type);
return $this;
}
你必须采取有关命名护理:
$browser = new TestFunctional(new Browser());
$browser->
uploadFile('article_image[image]', '/path/to/your/image.gif', 'image/gif')->
post('/articles/1/images.json', array('article_image' => array(
'title' => 'foobar',
'description' => 'lorum ipsum'
)))
;
远射...科斯,你是否遇到过上述问题? – richsage 2010-10-20 13:21:26
@richsage对不起..太久了。记不起来了。依稀记得扩展sfBrowserBase来解决我需要的东西。不是很有帮助,我很抱歉。 – kctang 2010-10-20 15:13:13
嘿,不用担心 - 谢谢你让我知道:-) – richsage 2010-10-20 15:14:20