【问题标题】:Unit Tests: how to prevent execution of built-in PHP functions单元测试:如何防止执行内置 PHP 函数
【发布时间】:2019-09-10 08:15:01
【问题描述】:

我正在做一个使用原生 PHP 方法的小型库,例如 json_encodefile_put_contents

现在,我正在进行单元测试,json_encode 运行时不会打扰我,但 file_put_contents 在运行单元测试时会创建文件。

您对此有什么想法?

我正在考虑将这些方法封装在 Helpers 中,例如。 JsonHelper,FileHelper,带有执行这些的方法,并在原始类中模拟它们。

你怎么看?

【问题讨论】:

标签: php unit-testing tdd


【解决方案1】:

封装作为外部依赖的函数通常是一个好主意。在 PHP 中,我通常会有 JsonEncoderFileCalendar 之类的类(后者用于封装日期函数)。请不要打电话给他们XyzHelper。每当人们这样命名课程时,一只小兔子就会死去。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    相关资源
    最近更新 更多