Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 函数的单元测试_Php_Unit Testing_Phpunit - Fatal编程技术网

Php 函数的单元测试

Php 函数的单元测试,php,unit-testing,phpunit,Php,Unit Testing,Phpunit,我有一个PHP文件,其中有一些函数(未包含在类中)。我正在使用PHPUnit进行测试。当我试图从包含函数的文件中简单地生成测试文件时,日志显示: Could not find class... 找不到类。。。 是否有可能测试不是方法的功能 如果我是对的,那么PhpUnit只适用于类和方法。因此,只需将它们转换为测试目的的方法。应该不难。是的,你可以用这样的方法: 包括/functions.php tests/MyFunctionTest.php 因此,只要您的函数在范围内,您就可以从测试方法调用

我有一个PHP文件,其中有一些函数(未包含在类中)。我正在使用PHPUnit进行测试。当我试图从包含函数的文件中简单地生成测试文件时,日志显示:

Could not find class... 找不到类。。。
是否有可能测试不是方法的功能

如果我是对的,那么PhpUnit只适用于类和方法。因此,只需将它们转换为测试目的的方法。应该不难。

是的,你可以用这样的方法:

包括/functions.php tests/MyFunctionTest.php
因此,只要您的函数在范围内,您就可以从测试方法调用它,就像任何其他PHP框架或项目中的任何其他PHP函数一样。

我只是不想创建另一个包含相同内容的文件。但你是对的:很简单:)谢谢你,特雷弗农。您的解决方案对我来说非常好:)我会按照您的建议来做。是的,这样做比利用函数进行测试更好。:)为什么这一点被否决了?也许那些悲观的选民可以告诉我们他们在这方面的智慧?哈哈!甚至过程编程也是面向对象的。你讨厌的是不使用面向对象的语言结构。如果我记得正确的话,面向对象最初是用C语言编写的,它是一个C++的库。我将从中取-1。
function my_function() {
    return true;
}
require_once '../includes/functions.php';

class MyFunctionTest extends PHPUnit_Framework_TestCase
{
    public function testReturnValue()
    {
        $return_value = my_function();
        $this->assertTrue($return_value);
    }
}