Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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_Database_Unit Testing_Session - Fatal编程技术网

Php单元测试会话

Php单元测试会话,php,database,unit-testing,session,Php,Database,Unit Testing,Session,我一直在研究如何测试会话。。我真的没有发现任何有用的东西 $user_id = $_SESSION['user_id']; $login_string = $_SESSION['login_string']; $username = $_SESSION['username']; $ip_address = $_SERVER['REMOTE_ADDR']; // Get the IP address of the user. $user_browser

我一直在研究如何测试会话。。我真的没有发现任何有用的东西

 $user_id = $_SESSION['user_id'];
     $login_string = $_SESSION['login_string'];
     $username = $_SESSION['username'];
     $ip_address = $_SERVER['REMOTE_ADDR']; // Get the IP address of the user. 
     $user_browser = $_SERVER['HTTP_USER_AGENT']; // Get the user-agent string of the user.
我应该如何测试它们

我是否要测试销毁会话,然后查看其是否已销毁?或者做任何类型的资产评估

谁能给我写一个例子并解释一下,因为我在这方面学得最好:)或者给我一个网站来解释

谢谢你的帮助

我应该如何测试它们

它们已经为您进行了测试,测试是在PHP问答团队中完成的,欢迎随时提供帮助

我是否应该[sic!]测试销毁会话,然后查看其是否已销毁?或者做任何类型的资产评估

不,完全没有必要,只是浪费时间

谁能给我写一个例子并解释一下,因为我用[sic!]i[sic!]这种方式学习最好:)[sic!]或者给我一个解释。。。[原文如此!]

这个网站有。环顾四周

长答覆:

$\u SESSION
这样的超全局函数是PHP语言的一部分。因此,您不需要对超全局进行单元测试,只要假设它工作正常即可

此外,与superglobal
$\u SESSION
的会话也是PHP语言的一个特性和组成部分。因此,如果会话有效,您不需要进行单元测试。你可以假设它工作正常

如果这些都有问题,那就是配置问题,单元测试不能(也不应该)处理这个问题

如果您是因为全局静态PHP在测试其他单元时引入的问题而提问,那么您需要模拟会话。要做到这一点,您需要先抽象会话,以便以后可以模拟它们。这通常从定义自己的会话功能接口开始,然后编写一个使用PHP默认特性实现的实现

我应该如何测试它们

它们已经为您进行了测试,测试是在PHP问答团队中完成的,欢迎随时提供帮助

我是否应该[sic!]测试销毁会话,然后查看其是否已销毁?或者做任何类型的资产评估

不,完全没有必要,只是浪费时间

谁能给我写一个例子并解释一下,因为我用[sic!]i[sic!]这种方式学习最好:)[sic!]或者给我一个解释。。。[原文如此!]

这个网站有。环顾四周

长答覆:

$\u SESSION
这样的超全局函数是PHP语言的一部分。因此,您不需要对超全局进行单元测试,只要假设它工作正常即可

此外,与superglobal
$\u SESSION
的会话也是PHP语言的一个特性和组成部分。因此,如果会话有效,您不需要进行单元测试。你可以假设它工作正常

如果这些都有问题,那就是配置问题,单元测试不能(也不应该)处理这个问题

如果您是因为全局静态PHP在测试其他单元时引入的问题而提问,那么您需要模拟会话。要做到这一点,您需要先抽象会话,以便以后可以模拟它们。这通常从定义自己的会话功能接口开始,然后编写一个使用PHP默认特性实现的实现