31

是否有 PHPUnit 与 Eclipse PDT 的集成?

如果没有,是否有计划这样做?

4

13 回答 13

44

请参阅Eclipse Plugin PHP Tool Integration (PTI),它为 Eclipse 提供了以下功能的集成:

  • PHP_CodeSniffer
  • PHPUnit
  • PHP 依赖
  • PHP 复制/粘贴检测器

更新站点(帮助 - 安装软件 - 添加 ...):

最新稳定版本:http://www.phpsrc.org/eclipse/pti/

开发版:http://www.phpsrc.org/eclipse/pti-dev/

于 2010-07-03T13:16:26.307 回答
23

我们开发了一个名为MakeGood的 Eclipse 插件,它将PHPUnit和更多测试框架与Eclipse PDT集成在一起。

MakeGood 是一个在Eclipse PDT上运行单元测试的连续测试运行器。

MakeGood 通过自动化工作流程为运行测试、跟踪故障和错误以及致命错误提供快速反馈。这将帮助开发人员进行测试驱动开发(TDD) 和持续测试

欲了解更多信息,请访问我们的网站:https ://github.com/piece/makegood/wiki

MakeGood的截图

于 2009-12-02T10:55:48.470 回答
7

可以以简单的方式将 PHPUnit 与 PDT 集成(这些设置并不完全通用,但应该是一个很好的起点)。

  1. 选择运行 > 外部工具 > 外部工具配置
  2. 创建一个新程序
  3. 将位置设置为指向您的可执行文件(Linux 上的 /usr/bin/phpunit)
  4. 设置工作目录以使用变量 ${workspace_loc}
  5. 将参数设置为 ${resource_path}

现在选择 Run > External Tools > PHPUnit 来执行选定的测试文件。这只是执行 phpunit 并将 STDOUT 发送到 Eclipse 终端。简单但有效。

随后,您可以使用带有绿色箭头和红色工具箱的图标来运行 PHPUnit,而无需导航菜单。

于 2009-07-15T13:57:50.710 回答
5

Sebastian Bergmann早在 2006 年就曾接触过 pdt ……但没有明显的结果。
而他在博客上的最新条目只提到了 PHPEdit 2.12 和 Zend Studio

PDT 方面唯一正式记录的测试框架是“PDT 测试框架”,而且它似乎没有积极维护......

所以不行。似乎没有任何计划在短期内积极地将 PHPUnit 集成到 PDT 中。

于 2009-06-08T20:08:38.370 回答
5

(免责声明:我绝对不是我在这里谈论的项目的开发人员;只是一个用户^^(而且由于我不了解 JAVA,因此我很难通过贡献代码来提供帮助......所以这是我的帮助方式:-) ) )

目前这方面的工作正在进行中:几周前(可能不超过两周),第一个在 Eclipse 中集成 phpunit 的项目已经发布:

它能做什么:

  • 允许从 Eclipse 启动 phpunit 测试
  • 并获得一些关于正在发生的事情的“视觉线索”
  • 在某种程度上,这比 Sebastian 在 phpunit 的 wiki 上提出的方法更好/更用户友好。

对于某种屏幕截图,请参阅http://code.google.com/p/phpunit4eclipse/wiki/j2phpUnitWrapper


不幸的是,它(还没有?)作为 Eclipse 插件开发:

  • 它是一个单独的 JAVA 项目,它启动 phpunit
    • 或类似的东西,据我所知......
  • 意思是 :
    • 没有很好地集成到 Eclipse 中
    • 最重要的是当你双击一个测试类/方法时,它不会让你进入那个类/方法(因为测试的结果由 JAVA 项目显示,而测试类/方法在另一个, PHP,项目)
  • 它仍然很难安装:
    • 我还没有成功地在 Eclipse PDT 中安装它
    • 我必须安装“Eclipse IDE for Java Developers”,然后在这个插件中安装 PDT 插件(效果很好,但并不“容易”)

无论如何,这是正在进行的工作,该项目还很年轻,这只是第一步......


前段时间为该项目创建了一个 google 组:http ://groups.google.com/group/phpunit4eclipse-user/

它目前是的,但我相信如果有人加入并提出他们的想法会有所帮助,为什么不提供帮助!

于 2009-07-27T22:12:56.537 回答
3

Eclipse PDT 和 PHPUnit 有明确的集成。 尽管我是 MakeGood for phpunit 的粉丝,但PHPSRCMakeGood都运行良好。我在 github 上分支了一个 PHPUnit CodeSniffer Standard,它验证了我可以使用 Eclipse PHP Tools CodeSniffer 插件运行的 phpunit 测试的质量。这更新了新的 phpunit 包,如 setUp 和 tearDown。

确保测试中有断言。开发人员在尝试满足代码覆盖率指标时喜欢忽略的东西 测试中没有断言

确保每个测试的断言不超过 1 个。最佳实践 太多的测试

在 Eclipse 中设置 PDT 并不简单。

涉及很多微小的细节 这是高级步骤。

pear clear-cache
pear upgrade pear
pear update-channels
pear upgrade --alldeps -f 
pear channel-discover pear.phpunit.de
pear channel-discover pear.symfony-project.com
pear channel-discover components.ez.no
pear install --alldeps phpunit/PHPUnit

[xdebug]

zend_extension = "C:\xampp\php\ext\php_xdebug-2.2.1-5.4-vc9.dll"
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_mode="req"
xdebug.remote_port=9000    
xdebug.remote_host = "127.0.0.1"
xdebug.remote_log="C:\xampp\php\logs"

我花了将近 3 天的时间才终于把一切都做好了,所以我整理了一个视频教程

祝你好运!

于 2013-02-18T04:07:55.163 回答
2

Eclipse Marketpalce 上有一个插件,现在称为 PTI PHP Tool Integration。

http://www.phpsrc.org/

于 2012-02-06T19:59:32.250 回答
0

我也像 DavidWinterbottom 提议的那样将 PHPUnit 作为外部工具运行。

我还根据项目类型添加的一件事是进入“构建选项”选项卡并在“运行构建器:”之后选择第一个选项。这会在您每次保存文件时触发单元测试。这对于获得真正快速的红-绿-重构反馈循环非常有用。

我在这里发布了带有屏幕截图的整个步骤:http: //nicholaslemay.blogspot.com/2010/02/using-eclipse-phpunit-as-automatic.html

于 2010-07-22T02:14:26.233 回答
0

也可以使用 Ant 的 phpunit,并且 Eclipse 本身就支持 Ant。简单地<exec executable="phpunit">在一个目标中添加一个新的,瞧,你可以在 Eclipse 中通过 ant 使用 phpunit。

于 2010-12-26T17:41:17.383 回答
0

在@DavidWinterbottom 响应(Eclipse Indigo)之后:

  1. 选择运行 -> 外部工具 -> 外部工具配置

  2. 创建一个新程序

  3. 将位置设置为指向您的可执行文件(在 Linux 上,或在 Windows 上的/usr/bin/phpunit路径)phpunit.bat

  4. 将参数设置为phpunit文件夹的绝对路径 ( C:\phpproject\testunit)

我无法使用${project_loc}or ${project_path}

于 2012-04-29T23:44:42.193 回答
0

对于所有在 unix 之类的机器上使用 composer 的人(安装了 eclipse 和 xdebug):

cd <project-root>
ln -s vendor/bin/phpunit phpunit.php

打开eclipse,打开运行/调试配置,新建调试配置,选择phpunit.php作为文件进行调试。像往常一样继续其余的设置,设置断点,就是这样。

于 2016-10-03T03:56:50.603 回答
-1

您已经在 Zend Studio 的 PDT 之上集成了 PHPUnit。也有CE版。

于 2009-10-06T19:05:16.680 回答
-2

我在 Eclipse 中尝试了 PHP Unit,但对配置问题不满意。我切换到 NetBeans PHP IDE。我推荐使用 NetBeans PHP IDE 进行 PHP 单元测试。 http://www.netbeans.org/kb/docs/php/phpunit.html

于 2009-08-18T11:16:44.263 回答