PHPzendframeworkphpunit深入

zchd發表於2014-12-30
安裝包管理
curl -sS https://getcomposer.org/installer | /usr/local/php/bin/php

將證照安裝到
~$ mkdir ~/tools/https-ca
 ~$ cd ~/tools/https-ca
 ~$ curl http://curl.haxx.se/ca/cacert.pem -o cacert.pem

地址在
/Users/jackluo/tools/https-ca/cacert.pem

然後修改php.ini檔案
openssl.cafile=/Users/jackluo/tools/https-ca/cacert.pem

下載檔案
/usr/local/php/bin/php composer create-project --repository-url="http://packages.zendframework.com" zendframework/skeleton-application .


nginx 偽靜態設定
server {
      listen      80;
      server_name www.example.com;
      root        /var/www/www.example.com/myapplication;
      index       index.html index.htm index.php;
 
      location / {
        try_files $uri $uri/ /index.php$is_args$args;
      }
 
      location ~ .php$ {
        fastcgi_pass   unix:/usr/local/zend/tmp/php-fastcgi.socket;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include        fastcgi_params;
      }
    }




安裝pear
$ cd /usr/local

curl http://pear.php.net/go-pear | sudo /usr/local/php/bin/php

which pear

$ vi ~/.bash_profile

php.ini 修改

include_path = "/usr/local/bin:.:/php/includes"
<?php
class DataTest extends PHPUnit_Framework_TestCase
{
    /**
     * @dataProvider additionProvider
     */
    public function testAdd($a, $b, $expected)
    {
        $this->assertEquals($expected, $a + $b);
    }

    public function additionProvider()
    {
        return array(
          array(0, 0, 0),
          array(0, 1, 1),
          array(1, 0, 1),
          array(1, 1, 3)
        );
    }
}
?>
jackluo@jackluos-MacBook-Pro:~/Works/php $phpunit DataTest
PHPUnit 4.4.1 by Sebastian Bergmann.

...F

Time: 40 ms, Memory: 3.50Mb

There was 1 failure:

1) DataTest::testAdd with data set #3 (1, 1, 3)
Failed asserting that 2 matches expected 3.

/Users/jackluo/Works/php/DataTest.php:9

FAILURES!
Tests: 4, Assertions: 4, Failures: 1.
jackluo@jackluos-MacBook-Pro:~/Works/php $