簡單易懂的React魔法(30):前80%已經(jīng)寫完了,現(xiàn)在該做什么呢?

這是我們開發(fā)的這個小程序的一個里程碑:我們已經(jīng)完成了代碼部分全部的任務(wù),他執(zhí)行了一個真正的任務(wù),還自帶一點css,雖然是微小的工作。其實在這里我們可以說,這給項目已經(jīng)做完了,你可以停下來去做自己想寫的React 程序了。

但是如果是真正的項目,你需要做的還有更多。

少了什么東西呢?缺少測試。用來確保我們寫的代碼得到我們想要的結(jié)果?,F(xiàn)在,我們很容易看出代碼做了什么,因為我們的程序足夠簡單。不過如果是更大的程序呢,如果按照流程進行測試,就算之后開發(fā)更復(fù)雜的項目,即使代碼量增加也很容易找到問題。

有的人想讓我一開始就提到測試,而且從頭到尾融入進教程。現(xiàn)在最流行的開發(fā)方式之一就是測試驅(qū)動開發(fā)(TDD),盡管它已經(jīng)變成了行為驅(qū)動型開發(fā)(BDD),他們非常相似(其實就差不多),這兩種方法都建議你在寫代碼之前先寫測試。

所以,這次我們寫了很多沒測試過的代碼,如果這是一個真正的項目,是非常不可靠的。接下來我會教你如何進行測試,但是在之后的編程過程中你應(yīng)該在寫代碼之前先寫測試。

首先我們要選一個測試框架,我們的選擇很多。之前我用過Mocha和Chai,Jasmine也很有名Facebook的Jest框架也是從Jasmine改進過來的。

上面的是好消息,下面的是壞消息:上面這些框架都不是很容易就能開始用的。我很想幫你走出第一步讓你不再害怕測試。所以我把下一章反復(fù)修改了好多次,每次寫下來都能找到更簡單的解釋方法,最終的結(jié)果是,我認為,已經(jīng)足夠簡單了。

我們將使用Jest框架,但是我們不用Mocking,即使Mocking是Jest最重要的功能之一,不過同時它也是很難讓初學(xué)者理解的。盡管如此,Jest還是提供了能想象的到的最簡單的測試方法,希望下一章你不會看得太痛苦。

在你噴我之前我想說:是的,我知道Mocha更快,不過Jest更簡單易懂,初學(xué)者一般都用這個。沒必要說Mocha更厲害,我知道,我都知道。相信我,這是我反復(fù)權(quán)衡的結(jié)果。好了嗎?好的來進行下一章

(請允許譯者在這里停筆,本書從發(fā)布至今原作者并沒有進行維護,原作使用的是react router 2.x版本,而最新版本是4.x,為了彌補譯者已經(jīng)重寫了很多章的內(nèi)容,奈何本人能力有限,后面章節(jié)也沒有進行了解,貿(mào)然大幅度修改實在不是好的解決辦法。)
到這為止的代碼都放在了本人github上,如果想了解更多內(nèi)容也請查看原作.
當(dāng)然最好還是參閱別的教程,畢竟前端日新月異的嘛。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,094評論 25 709
  • 本次翻譯時間為2016年9月底,目前Mocha的版本為3.1.0。官方文檔地址: http://mochajs.o...
    Awey閱讀 17,811評論 4 34
  • 前言 對于少量的代碼,我們通常能夠通過肉眼或者代碼編輯器,甚至控制臺出現(xiàn)的錯誤,找出對應(yīng)有問題的代碼行,可以進行排...
    itclanCoder閱讀 1,526評論 1 2
  • 我們常常用道德綁架人。覺得正義,勇敢是必需品。時常又在無人監(jiān)管的地帶迷茫。有錯嗎?誰的錯?哪錯了?對的年紀,對的人...
    虛度老太婆閱讀 310評論 0 0
  • 真正的朋友不是你快樂站在你身邊的人 而是,悲傷時拍著你肩膀的人 我無法忍受朋友間的虛偽,猜忌 我覺得那是世界上最丑...
    進食的飛豬閱讀 220評論 0 2

友情鏈接更多精彩內(nèi)容