PHP Unit ohne Pear usw. installieren

Unit Tests machen nicht nur Sinn, sondern auch Spaß und erleichtern das Leben. Für PHP gibts PHPUnit.

Auf die Schnelle  geht’s so (bin Verzeichniss in ~ benötigt):

[schmimi2@cepheus ~]$ cd ~/bin
[schmimi2@cepheus bin]$ wget http://pear.phpunit.de/get/phpunit.phar
[schmimi2@cepheus bin]$ mv phpunit.phar phpunit
[schmimi2@cepheus bin]$ chmod +x phpunit
[schmimi2@cepheus bin]$ bash

Zum Testen einfach das File StackTest.php mit folgendem Inhalt erzeugen:

<?php
 
 
class StackTest  extends PHPUnit_Framework_TestCase
{
    public function testPushAndPop()
    {
        $stack = array();
        $this->assertEquals(0, count($stack));
 
        array_push($stack, 'foo');
        $this->assertEquals('foo', $stack[count($stack)-1]);
        $this->assertEquals(1, count($stack));
 
        $this->assertEquals('foo', array_pop($stack));
        $this->assertEquals(0, count($stack));
    }
	public function testFail(){
		$this->assertEquals(false,true);
 
	}	
 
}

Test laufen lassen:

[schmimi2@cepheus unittests]$ phpunit StackTest.php 
PHPUnit 3.7.21 by Sebastian Bergmann.
 
.F
 
Time: 0 seconds, Memory: 2.75Mb
 
There was 1 failure:
 
1) StackTest::testFail
Failed asserting that true matches expected false.
 
/var/www/virtual/schmimi2/api.giftimessen.de/unittests/StackTest.php:19
 
FAILURES!
Tests: 2, Assertions: 6, Failures: 1.

Eclipse, mein neues Thinkpad und die merkwürdige 64 bit Welt

Nun habe ich meinen neuen Laptop fast 1 Jahr, bin schon begeistert, von einem 1,83 Ghz Centrino mit 32 Bit auf 2*2,5 Ghz mit 64 Bit Registerbreite zu springen ist schon ziemlich geil. Nun habe ich mir ein neues Eclipse gezogen (mal in Netbeans geschnuppert) und aus Versehen die 32 Bit Version gezogen. Angemacht und fast Gebrochen. Der Splash Screen war nicht zu sehen. Das letzte halbe Jahr hatte ich mit dem Eclipse aus dem Ubuntu Repository und PHP Eclipse verbracht (leider). Zwischen den 2 Versionen liegen in der Ausführungsgeschwindigkeit Welten. Irgendwie nährt sich in mir immer mehr der Verdacht, dass die x64 Libs leicht fürn Arsch sind. Beim builden von 32bit Apps gibts nur Probleme und der 32Bit Kram läuft deutlich schneller (ich bin nicht gerade der Mensch, der Bootzeiten stoppt). Trotz der Warnung zahlreicher Kollegen hab ichs nicht eingesehen mir ein  32Bit System aufzusetzen. Wenn sich das mit dem Speed bewarheitet, ist ganz schnell ein neues System drauf. Dann kann ich wenigstens mein log-get Tool mal ausprobieren.