【问题标题】:How to setup NetBeans to generate unit testing for CodeIgniter project using PHPUnit如何设置 NetBeans 以使用 PHPUnit 为 CodeIgniter 项目生成单元测试
【发布时间】:2013-07-02 14:15:16
【问题描述】:

我使用 netbeans 7.3,最新的 PHPUnit 作为我的单元测试框架和 CodeIgniter 作为 MVC 框架。当我想通过右键单击 php 类在 netbeans 中生成单元测试时,工具-> 创建 phpUnit 测试骨架生成器应该必须生成单元测试骨架文件。当我对 model/calculator.php 文件执行此操作时,它会引发错误。该错误未描述任何内容,因此它表示未创建测试文件。

以下是calculator.php 文件中的代码。

<?php
use \CI_Model;

/**
 * @assert(1,2)=3
 * @assert(2,2)=4
 */

 class Calculator extends CI_Model
 {
 function Add($n1,$n2)
    {
    return $n1+$n2;
    }
 }

我的问题是,当我删除扩展 CI_Model 时,IDE 可以生成单元测试文件,但使用扩展 CI_Model 它会生成上述错误消息。我在这里做错了什么,或者我应该做哪些配置更改才能使其正常工作?

【问题讨论】:

  • 您找到解决方案了吗?也许有一种方法可以引导类扩展的所有类

标签: php codeigniter-2


【解决方案1】:

如果使用 composer.json,添加这个

"phpunit/phpunit-skeleton-generator": "*", "phpunit/phpunit" : "4.7.*", "Celc/ciunit" : "dev-master"

运行 composer 将 phpunit-skelgen 添加到您的供应商目录

composer update

通过 CodeIgniter 的 /application/controllers 目录中的命令行运行以下命令(所有命令):

../../vendor/bin/phpunit-skelgen generate-test --bootstrap ../../vendor/celc/ciunit/src/bootstrap_phpunit.php -- YourClassName

例子

[path to skelgen] generate-test --bootstrap [path to CI Unit bootstrap] -- YourClassName

要更改生成文件在 CodeIgniter 中的保存位置,请查看我的解决方案 PHPUnit generated test skeleton path

干杯

【讨论】:

  • 感谢您的帖子,安德鲁。我试试这个
猜你喜欢
  • 2012-09-14
  • 1970-01-01
  • 1970-01-01
  • 2014-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-02
  • 2017-06-16
相关资源
最近更新 更多