在一段遺留代碼中,我的任務(wù)是在這樣的特征中測試靜態(tài)函數(shù):namespace App\Model\SomeLogic;trait WhyDecidedToUseTrait{ public static function aMethodThatDoesSomeFancyStuff() { //Method Logic }}并從使用該方法的這篇文檔開始getMockForTrait。但是在我的情況下,為了測試靜態(tài)函數(shù)而制作一個虛擬對象,其中對象瞬間是無用的,沒有任何價值。同樣在使用此特征的對象中測試方法似乎非常耗時,而且進行更大規(guī)模的重構(gòu)也很耗時。那么我如何測試該特征以逐漸重構(gòu)使用它的任何類?
1 回答

四季花海
TA貢獻1811條經(jīng)驗 獲得超5個贊
只需使用此特性創(chuàng)建一個 Dummy 類:
namespace Tests\YourTeasts;
use PHPUnit\Framework\TestCase;
use App\Model\SomeLogic\WhyDecidedToUseTrait;
class Dummy
{
use WhyDecidedToUseTrait;
}
class StoreExtraAttributesTraitTest extends TestCase
{
public function setTheStaticMethod()
{
Dummy::aMethodThatDoesSomeFancyStuff();
//Assertions are done here
}
}
因此您可以測試該方法,但在覆蓋測試的情況下,我不知道何時顯示或不顯示。
- 1 回答
- 0 關(guān)注
- 149 瀏覽
添加回答
舉報
0/150
提交
取消