第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何測(cè)試抽象類?

如何測(cè)試抽象類?

PHP
守候你守候我 2021-06-10 10:53:53
我對(duì)如何開始測(cè)試抽象類的方式感到困惑。我應(yīng)該測(cè)試每種方法嗎?我應(yīng)該測(cè)試什么?我不應(yīng)該測(cè)試抽象類嗎?一個(gè)例子:abstract class Command{    private $params;    public function with(array $params = [])    {        $this->params = $params;    }    public function getParams()    {        return $this->params;    }    abstract public function run();}我應(yīng)該像這樣測(cè)試它:/** @test */public function is_an_abstract_class(){    $command = $this->getReflectionClass();    $this->assertTrue($command->isAbstract());}/** @test */public function has_an_run_method(){    $command = $this->getReflectionClass();    $method = $this->getReflectionMethod('run');    $this->assertTrue($command->hasMethod('run'));    $this->assertTrue($method->isAbstract());    $this->assertTrue($method->isPublic());    $this->assertEquals(0, $method->getNumberOfParameters());}
查看完整描述

1 回答

?
冉冉說

TA貢獻(xiàn)1877條經(jīng)驗(yàn) 獲得超1個(gè)贊

我不應(yīng)該測(cè)試抽象類嗎?

在大多數(shù)情況下,這將是我的選擇。

原因#1:某些類從抽象類繼承的事實(shí)是實(shí)現(xiàn)細(xì)節(jié),而不是行為。我們不想將我們的測(cè)試與實(shí)現(xiàn)細(xì)節(jié)結(jié)合起來(lái)。

原因#2:我希望抽象類中的代碼被覆蓋其后代的測(cè)試覆蓋。

如果您的設(shè)計(jì)是新興的“測(cè)試優(yōu)先”,那么您已經(jīng)涵蓋了此代碼,因?yàn)槌橄箢悓⑹悄鷮⑼ㄟ^重構(gòu)已經(jīng)在測(cè)試中的類引入到您的設(shè)計(jì)中的東西。


查看完整回答
反對(duì) 回復(fù) 2021-06-19
  • 1 回答
  • 0 關(guān)注
  • 286 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)