Jump to content
php.lv forumi

PHPUnit


euphoric

Recommended Posts

Labs vakars!

 

Sāku praktizēt ar PHPUnit, testu rakstīšanu un aizķēros. Varbūt kāds spēs palīdzēt =)

 

Tātad vienkārš tests:

 

add.php

class Add 
{
 public function unit()
 {
   $test = "foo";
   return $test;
 }
}

 

AddTest.php

<?php
require_once 'add.php';

/**
*  test case.
*/
class Test extends PHPUnit_Framework_TestCase {

/**
 * Prepares the environment before running a test.
 */
protected function setUp() {
	parent::setUp ();

// TODO Auto-generated Test::setUp()
}

public function testUnit()
{
	$addClass = new Add();
	$unitMethod = $addClass->unit();
	$this->assertEquals('foo', $unitMethod);
}

/**
 * Cleans up the environment after running a test.
 */
protected function tearDown() {
	// TODO Auto-generated Test::tearDown()
	parent::tearDown ();
}

/**
 * Constructs the test case.
 */
public function __construct() {
	// TODO Auto-generated constructor
}
}

 

Izpildās Lieliski =))

 

Bet, ja add.php ir ar extended, izmet Erroru un testu nepilda.

class Add extends Controller
{
 public function unit()
 {
   $test = "foo";
   return $test;
 }
}

 

Error's izskatās šādi:

"No test executed. Either a fatal error occurred, the launch was stopped manually or the script execution was halted with a 'die'/'exit' statement."

 

Maybe, kāds ko var ieteikt?

Pāldies :))

 

PS.

Zend studio 7.1 ,PHPUnit v3.x

Link to comment
Share on other sites

Browser Output rāda:

"Fatal error: Class 'Controller' not found in add.php on line 3

"

Tas ir CodeIgniter projekts, google'jot neko izņemot atsevišķas bibliotēkas priekš CI Unit Testiem neatradu.

 

Šķiet tas būtu ļoti neērti, ja nākas lietot dažādus instrumentus Testēšanai, atkarībā no platformas uz kuras tiek viss celts.

 

Domājams, tas tomēr ir realizējams ar PHPUnit.

 

Būšu ļoti pateicīgs, ja kāds zinoš, pabakstītu =)

Link to comment
Share on other sites

mhm, unittestēšanai testējamo kodu jāsadala pa blokiem (unit'iem) ar pēc iespējas mazāk depenzijām. Unittestēšanas kontekstā palasies arī par mock un stub (lietas ar kurām aizstāt kādu lielu/lēnu testējamās vienības depenziju, piemēram konektēšanos pie kāda servera)

Edited by v3rb0
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...