gpt4 book ai didi

php - 文件导入导出模块的单元测试

转载 作者:可可西里 更新时间:2023-11-01 00:23:25 25 4
gpt4 key购买 nike

我正在尝试为文件导入导出模块编写单元测试。

我的一个方法检查传递的文件名是否存在。

这将如何模拟并编写测试来检查文件是否存在?

最佳答案

单元测试应该证明一个代码单元在完全隔离 中正常运行。如果您的测试依赖于文件系统的正常运行才能通过,那么您的测试就不是最优的,并且在任何给定的测试运行中都可能对您撒谎。

与任何实验一样,当有多个变量在起作用时,您无法确定结果。对于与文件系统交互的 PHP 代码,最好使用自定义流包装器(通常为 vfsStream ,但如果您确实需要,也可以轻松编写自己的流包装器)来模拟文件系统。

$noTest < $testWithFileSystemDependency < $testThatMocksFileSystem

通常,这是通过将文件路径传递给直接使用它们的方法来实现的:

<?php
function myFunction($someFilePath) {
// do stuff
}

通过这种方式,您可以模拟文件系统并传入一个可测试的虚拟路径,该路径将按照您模拟的方式运行。

关于php - 文件导入导出模块的单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12134489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com