如何编写php单元测试来测试栈的功能


How to write php unit test to test the stack functionality?

我想为一个处理一堆正整数的类写一个单元测试。

该类中有4个方法:push($x), pop(), getSize(), purge() .

请帮帮我。

类看起来像:-

class Stack {
    private $stack = array();
    public function __construct() {
    }
    public function push($data) {
        array_push($this->stack, $data);
    }
    public function pop() {
        return array_pop($this->stack);
    }
    public function getSize() {
        return count($this->stack);
    }
    public function purge($element) {
        unset $this->stack[$element];
    }
}
$s = new Stack();

其中一个测试是

$s = new Stack();
$s->push(1);
assertEquals($s->getSize(), 1);
$s->push(2);
assertEquals($s->getSize(), 2);
assertEquals($s->pop(), 2);
assertEquals($s->getSize(), 1);
assertEquals($s->pop(), 1);
assertEquals($s->getSize(), 0);