我有几个php文件,每个文件都声明了相同的类名。 我想将它们全部测试成一个phpunit批处理,但我得到“致命错误:你不能重新声明类”:(
无论如何要进行批量测试? 或者我要测试每个文件的文件?
感谢。
答案 0 :(得分:0)
我不太了解你的问题。然而,这就是我正在为批量单元测试做的事情(希望它能帮到你)。
对于批处理单元测试.bat脚本,我的所有单元测试类都列为这样(run_unit_test.bat):
@ECHO OFF
CLS
ECHO.
ECHO FILE : AUTOMATIC_BACKUP_MANAGER_TEST.PHP
ECHO.
CALL PHPUNIT %~DP0/TEST/AUTOMATIC_BACKUP_MANAGER_TEST.PHP
ECHO.
ECHO.
然后我正在使用Dos命令(在Xampp控制台中,在普通的dos控制台中不适合我),如下所示将结果发送到文本文件(我使用PHP读取文本文件并显示它)。 / p>
C:\xampp\htdocs\PC_administration_interface\Controler/temp_unit_test.bat > C:\xampp\htdocs\PC_administration_interface\Controler/test_result.txt
对于自动测试,我使用任务调度程序来调用该脚本:
@echo off
call C:\xampp\htdocs\PC_administration_interface\Controler\launch_xampp.bat
call C:\xampp\xampp_shell.bat
cls
call C:\xampp\htdocs\PC_administration_interface\Controler\run_unit_test.bat > "C:\xampp\htdocs\PC_administration_interface\Controler\test_result.txt"
这是Launch xampp脚本:
@echo off
tasklist | find /i "xampp-control.exe" && goto :eof
start /b "xampp-control.exe" "C:\xampp\xampp-control.exe"
xampp_shell脚本使用所有xampp配置启动命令提示符(如果使用Xampp,则默认情况下会这样)。
在任务调度程序中,我正在运行两个操作。这一个运行脚本(在程序/脚本文本框中启动程序):
C:\xampp\htdocs\PC_administration_interface\Controler\launch_automatic_test.bat
这个用于打开chrome中的新选项卡以显示结果:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
在add argument textbox中有这样的东西:
http://localhost/PC_administration_interface/view/unit_test.php?DISPLAY_RESULT=TRUE
除了该解决方案之外,您可能应该使用“require_once”命令来确保声明实际上只被声明一次。
此外,为每个类声明一个单元测试类可能是一个好习惯(除了用于模拟枚举的常量类之外,每个文件只包含一个类)。
像我说的那样,我不太了解你的问题。如果我的解决方案不起作用,您可能需要向我们提供代码示例。最谦虚,
来自蒙特利尔的Jonathan Parent-Lévesque