使用 phpunit 测试异常消息

neu*_*ert 2 php phpunit

我的 phpunit 测试:

<?php
class TestTest extends PHPUnit_Framework_TestCase
{
        /*
         * @expectedExceptionMessage success
         */
    public function testExceptionMessage() {
        throw new Exception('success');
    }
}
Run Code Online (Sandbox Code Playgroud)

单元测试失败。这是 phpunit 的输出:

There was 1 error:

1) TestTest::testExceptionMessage
Exception: success

/path/to/TestTest.php:8

FAILURES!                          
Tests: 1, Assertions: 0, Errors: 1.
Run Code Online (Sandbox Code Playgroud)

在我看来,测试应该成功,因为异常消息是成功的,这正是 @expectedExceptionMessage 所期望的?

cea*_*eak 5

添加@expectedException注释,它应该可以工作

/**
 * @expectedException Exception
 * @expectedExceptionMessage success
 */
 public function testExceptionMessage() {
    throw new Exception('success');
 }
Run Code Online (Sandbox Code Playgroud)