developerhub/php-testcase

此包的最新版本(v1.1.0)没有可用的许可证信息。

PHP的PHPUnit测试工具

v1.1.0 2012-08-03 11:40 UTC

This package is auto-updated.

Last update: 2024-09-17 22:29:42 UTC


README

由{ DeveloperHub

PHPTestCase

  • 一套用于测试PHP应用程序的工具集
  • 建议将PHPTestCase用作子模块

安装PHPTestCase

  • 从外部仓库克隆 $ git submodule add http://github.com/DeveloperHub/PHPTestCase.git libs/PHPTestCase
  • 在项目根目录下创建 .gitmodules 文件,该文件代表配置文件,其中存储了项目URL地址与本地子目录PHPTestCase之间的映射
  • 托管项目现在是“超级项目”
  • 虽然克隆时获得了 .gitmodules,但没有其数据,需要下载
    • $ git submodule init = 初始化本地配置文件
    • $ git submodule update = 获取所有数据
  • 在unit和selen目录的skeleton中,readme文件中已经准备了示例测试类

设置

  • 将skeleton/目录的内容复制到您的应用程序根目录
  • 您将获得
    • phpunit.xml - PHPUnit配置
    • tests/
      • case/
        • selen/ - Selen测试目录
        • unit/ - 集成和单元测试目录
      • coverage/ - 覆盖率报告目录
      • libs/ - 存储第三方类或它们的修改,或您仅在测试中使用的类
      • run.php - NetteTestCase和PHPUnit框架的启动器

启动集成和单元测试

  • $ php tests/run.php
    • 无参数时将运行所有测试
    • 使用参数--group unit仅运行单元测试
  • 如果使用pre-commit,则仅自动在unit组中运行测试

在执行git commit命令之前运行测试

  • 从libs/PHPTestCase/framework/Hooks/pre-commit复制到 .git/hooks/
  • 您可以设置在提交时要运行的特定测试组
  • 您可以设置PHP的路径
  • git commit
    • 启动PHPUnit测试
    • 测试成功通过后,将执行git commit
    • 测试失败时,不会执行git commit

关于phpunit.xml的设置说明

  • 监听器
    • Application_Test_TestTimeListener - 取消注释后监视单个测试的最大运行时间不超过2秒