PHPUnit9.0 标注-@uses

2022-03-24 11:01 更新
PHPUnit9.0 标注集合PHPUnit9.0 标注集合

@uses​ 标注用来指明那些将会在测试中执行到但同时又不打算让其被测试所覆盖的代码。在对代码单元进行测试时所必须的值对象就是个很好的例子。

/**
 * @covers \BankAccount
 * @uses   \Money
 */
public function testMoneyCanBeDepositedInAccount(): void
{
    // ...
}

示例 9.2 展示了另一个示例。

示例 9.2 指明了要覆盖的类的测试类

<?php declare(strict_types=1);
use PHPUnit\Framework\TestCase;

/**
 * @covers \Invoice
 * @uses \Money
 */
final class InvoiceTest extends TestCase
{
    private $invoice;

    protected function setUp(): void
    {
        $this->invoice = new Invoice;
    }

    public function testAmountInitiallyIsEmpty(): void
    {
        $this->assertEquals(new Money, $this->invoice->getAmount());
    }
}

在严格覆盖模式中,意外覆盖的代码将导致测试判定为失败,这个标注就比较有用,另外它也有助于阅读代码。

请注意,此标注要求用完全限定类名(FQCN,fully-qualified class name)。为了让读者更容易理解,推荐写上开头的反斜杠(虽然此标注并不要求如此也能正常运行)。


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号