簡體   English   中英

斷言 1 與預期 6 匹配失敗

[英]Failed asserting that 1 matches expected 6

我得到了這個測試,我需要編寫通過的代碼。

但只有我能得到的是:“斷言 1 與預期的 6 匹配失敗”,如果我返回 6,我會得到“arguments 到第 18 行的 function 和預期的正好 3 太少”

這是測試:

    public function powerTest()
{
    $calculator = new Calculator();

    $this->assertEquals(6, $calculator->power(1,2,3));
    $this->assertEquals(0, $calculator->power());
}

那是我的代碼:

    public function power(int $int, int $int1, int $int2)
{
    return 1;
}

根據定義,斷言要求條件為真; 否則,他們會拋出異常。 在這種情況下,您的第一個斷言要求$calculator->power(1, 2, 3)的結果等於 6,而事實並非如此。 它返回 1。

6,= 1. 所以它失敗了。

第二個不提供 arguments 到電源 function $calculator->power() 你的電源function有3個arguments,都是必須的。 沒有提供足夠的 arguments 會給你一個太少的 arguments 錯誤。

您可以通過指定默認值使 arguments 成為可選。

function foo($bar = true)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM