【问题标题】:How deal with related fixtures如何处理相关的灯具
【发布时间】:2018-02-21 22:16:51
【问题描述】:

我正在使用 phpunit 测试我的 CakePHP 应用程序,但是,我创建了两个夹具:- ABA 首先插入,B 第二个插入,但 B 也有一个 a_id 字段,我需要从第一个夹具中填充。

我的意思的一个很好的例子存在于文档中:https://book.cakephp.org/3.0/en/development/testing.html#loading-fixtures-in-your-test-cases 其中显示了articlescomments 固定装置,但从未显示comments 是如何构建的。

如何使用 CakePHP 固定装置做到这一点?

【问题讨论】:

  • Fixture 只是您可以手动添加的示例数据。这是一本关于 cakephp 中 unti 测试的书:apress.com/gp/book/9781484212134
  • @rrd 谢谢,但由于这本书的价格为 17 英镑,它实际上并没有帮助,你能不能用回答我问题的方式解释一下你的意思?

标签: cakephp phpunit cakephp-3.0


【解决方案1】:

灯具彼此不相关。您需要在它们包含的数据中手动建立关联。夹具只是测试as the book explains it as well中使用的数据。无论它们是否相关,数据都将被插入到测试数据库中。只有在您对它生成的数据库表施加约束并且 FK 不存在时,它们才会失败。

在测试依赖于模型和数据库的代码时,可以使用夹具作为一种生成临时数据表的方法,该表加载了可供测试使用的示例数据。使用夹具的好处是您的测试没有机会破坏实时应用程序数据。此外,您可以在实际为应用程序开发实时内容之前开始测试您的代码。

因此,如果您有 cmets 使用您的文章的 FK 在那里创建记录。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-30
    • 2018-01-20
    • 1970-01-01
    相关资源
    最近更新 更多