Skip to content
CodeIgniter 3 PHPUnit Test extension library
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
core
example-tests
LICENSE
README.md
bootstrap.php
composer.json
phpunit.sample.xml
phpunit.xml

README.md

CodeIgniter PHPUnit Test


CodeIgniter 3 PHPUnit Test extension library

Latest Stable Version License

This RESTful API extension is collected into yidas/codeigniter-pack which is a complete solution for Codeigniter framework.

FEATURES

  • PHPUnit Test in Codeigniter 3 Framework

  • Easy to install into your Codeigniter project by Composer


OUTLINE

REQUIREMENTS

This library requires the following:

  • PHP 5.3.0+
  • CodeIgniter 3.0.0+

INSTALLATION

Run Composer in your Codeigniter project under the folder \application:

composer require yidas/codeigniter-phpunit

DIRECTORY STRUCTURE

codeigniter/
└── application/
    ├── tests/          Test cases
    ├── vendor/         Vendor included yidas/codeigniter-phpunit
    └── phpunit.xml     PHPUnit XML

CONFIGURATION

According to Directory Structure, create and configure phpunit.xml under application directory:

<?xml version="1.0" encoding="UTF-8" ?>
<phpunit bootstrap="vendor/yidas/codeigniter-phpunit/bootstrap.php">
  <testsuites>
    <testsuite name="TestSuite">
      <directory>tests</directory>
    </testsuite>
  </testsuites>
</phpunit>

For this phpunit.xml template, the test cases directory is application/test, make sure you would create every test cases under it.


USAGE

In the application directory of this library, run phpunit from vendor:

$ ./vendor/bin/phpunit

Or using absolute path commands like:

$ /var/www/html/codeigniter3/application/vendor/bin/phpunit -c /var/www/html/codeigniter3/application/phpunit.xml
$ phpunit -c /var/www/html/codeigniter3/application/phpunit.xml

Then the result would like:

PHPUnit 5.7.27 by Sebastian Bergmann and contributors.



Time: 40 ms, Memory: 2.75MB

No tests executed!

TEST CASE

With this extension libaray, you could write test cases with loading Codeigniter framework.

For example, write a test case application/tests/CodeigniterTest.php for testing Codeigniter config component:

<?php

use PHPUnit\Framework\TestCase;

final class CodeigniterTest extends TestCase
{
    function __construct() 
    {
        parent::__construct();
        // Load CI application
        $this->CI = & get_instance();
    }
    
    public function testConfigItem()
    {
        $indexPage = $this->CI->config->item('index_page');
        
        $this->assertSame('index.php', $indexPage);
    }
}

Then you would get the result OK (1 test, 1 assertion) by running PHPUnit test.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.