使用cakephp 2.0和PHPUnit的vsfStream

使用cakephp 2.0和PHPUnit的vsfStream,php,unit-testing,phpunit,cakephp-2.4,Php,Unit Testing,Phpunit,Cakephp 2.4,我目前正在为处理文件的图像模型构建一些测试,并希望使用vsfStream来测试文件操作 我似乎无法通过测试识别vsfClass vsfStream库位于app/Vendor/vsfStream中 我的ImageTest.php文件如下: <?php App::uses('Image', 'Model'); App::uses('vfsStream', 'Vendor'); //App::import('Vendor', 'vfsStream', array('file' =>

我目前正在为处理文件的图像模型构建一些测试,并希望使用vsfStream来测试文件操作

我似乎无法通过测试识别vsfClass

vsfStream库位于app/Vendor/vsfStream中

我的ImageTest.php文件如下:

 <?php
 App::uses('Image', 'Model');
 App::uses('vfsStream', 'Vendor');
 //App::import('Vendor', 'vfsStream', array('file' => 'vfsStream' . DS . 'vfsStream.php'));
 /**
  * Image Test Case
  *
  */
  class ImageTest extends CakeTestCase {

  /**
   * Fixtures
   *
   * @var array
   */
      public $fixtures = array(
    'app.image',
    'app.contractor',
    'app.project',
    'app.project_contractor',
    'app.project_image'
  );

 /**
  * setUp method
  *
  * @return void
  */
      public function setUp() {
    parent::setUp();
    $this->Image = ClassRegistry::init('Image');
            $this->root = vfsStream::setup('exampleDir');
  }

 ...more code
我得到了错误

错误:找不到类“vfstream” 文件:C:\xampp\htdocs\sgaluminal\app\Test\Case\Model\ImageTest.php 第32行


任何帮助都将不胜感激。谢谢

看来vsfStream没有正确加载。你在里面放了作曲家吗?我建议您使用此composer插件:阅读他们网站上的“如何使用”部分,然后编写composer.json,如下所示:

{
    "require-dev": {
        "phpunit\/phpunit": "3.7.35",
        "mikey179/vfsStream": "1.2"
    }
}
这个设置在我的项目中运行得很好。在我的测试文件中,我使用:

App::uses('vfsStream', 'Vendor');
就像你一样