首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >phpspec和laravel装置

phpspec和laravel装置
EN

Stack Overflow用户
提问于 2014-03-11 10:53:01
回答 2查看 3.2K关注 0票数 4

我正在建立一个新的Laravel项目和集成PHPSpec。我很难找到一个很好的phpspec.yml文件工作示例,它可以很好地与Laravel一起工作。类似于Rails中的RSpec。

我想要的文件夹结构如下所示

代码语言:javascript
复制
spec/
    models/
    controllers/
app/
    models/
    controllers/

我的phpspec.yml当前如下所示:

代码语言:javascript
复制
suites:
controller_suite:
    namespace: Controller
    spec_path: 'spec/controllers'
    src_path: 'app/controllers'

model_suite:
    namespace: Model
    spec_path: 'spec/models'
    src_path: 'app/models'  

我在spec/ Model文件夹中复制了与模型相关的测试,但是当我'phpspec运行‘时,它不会运行其中的任何一个。我还意识到名称空间不是Laravel中的“Model”和“Controller”,也许更像雄辩和BaseController。

我还使用了这个扩展:https://github.com/BenConstable/phpspec-laravel

我不知道该如何设置,也找不到任何有用的例子。提前感谢!

编辑:在Jeffrey的另一个论坛上的建议:

你可以用Behat测试你的控制器。PHPSpec并不是它的替代品(或共同欺骗)。

更新:

从那以后,我决定使用widely代替,因为它似乎集成到Laravel中,并得到了广泛的应用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-03-11 16:52:55

请通过本·康斯特布尔的电子邮件回复:

用Laravel设置默认的文件布局是相当困难的,我还没有弄清楚如何做。但是,您可以让它使用稍微不同的布局,如:

  • 应用程序控制器. MyController.php -模型. MyModel.php -规范-控制器. MyControllerSpec.php -模型. MyModelSpec.php 那么,在您的phpspec.yml中,您将拥有: 扩展:-PhpSpec\Laravel\Extension: laravel_controller_suite:命名空间: src_path: app laravel_model_suite:命名空间: Models src_path: app laravel_extension: testing_environment:“测试” 最后,您需要修改composer.json以将app/包含在autoload类映射中。您的模型、控制器以及其他将命名的内容,例如:
票数 5
EN

Stack Overflow用户

发布于 2017-11-06 08:43:13

对于那些使用Laravel5.x和PhpSpec 4.x的用户,您可以使用PSR4前缀配置进行调整,以便使PhpSpec与Laravel布局兼容。

我的项目使用了以下配置:

代码语言:javascript
复制
suites:
    app:
        namespace: App
        src_path: app
        psr4_prefix: App
        spec_prefix: classes
        spec_path: specs
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22323536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档