Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TDD.pdf

 TDD.pdf

Bae Hyeonseung

November 12, 2019
Tweet

Other Decks in Programming

Transcript

  1. ࠛഛपࢿ  ੿ഛࢿ ↟ޖ঺੉ੌযզ૑ഛ੿੸ਵ۽ঌҊ੓ח҃਋  ܻझ௼ ↟ޖ঺੉ੌযզ૓ݽܰ૑݅ ੌযզࣻ੓ח҃਋ী؀೧ইח҃਋ ↟Ӓ੿بܳഛܫ੸ਵ۽աఋյࣻ੓ח҃਋ 

    ࠛഛपࢿ ↟ޖ঺੉ੌযզ૓ݽܰ૑݅ ੌযզࣻ੓ח҃਋ী؀೧ইח҃਋ ↟ೞ૑݅ഛܫ੸ਵ۽ੜݽܰח҃਋  ޖ૑ ݨ୒ೣ  ↟੹ഃ৘ஏೡࣻহҊ ੌযզ૑بݽܰח҃਋
  2. ࠛഛपࢿਸծ୶۰ݶ ࠁా ޷ېী ੌযզ ੌী ؀ೠ ࠛഛपࢿ੉ۄח Ѫ਷, 1. दр੉

    ૑աݶ ੗োझۣѱ ઴যٟפ׮ 2. ইח ૑ध੉ ݆ই૓׮ݶ ઴যٜѱ ؾפ׮
  3. ࠛഛपࢿਸծ୶۰ݶ ৘ܳ ٜয য়ט ઑ੉о ݡਸ ੷֘ ݫ׏о ޖ঺ੋ૑ ঌҊ

    र׮Ҋ о੿ೞ੗. Ӓۧ׮ݶ ੷֘दр੉ оөਕ ૕ࣻ۾ ࠛഛपࢿ੉ ઴যٜҊ, য়ט ઑ੉о ݡ਷ ੼ब੉ ޖ঺ੋ૑ী ٮۄࢲ ࠛഛपࢿ੉ ઴যٟפ׮. ࠛഛपೠ Ѫ दр੄ ҃җ ૑ध
  4. ഈ۱җೖ٘ߔ ೞ૑݅ ਋ܻח दр੉ ૑աоӡ ӝ׮ܾ ࣻ হणפ׮. ƕƑ ਋ܻח

    ؊ ࡅܰѱ ૑धਸ णٙೞৈঠ ೤פ׮. Ӓۧѱ ೞӝ ਤ೧ࢲ ਋ܻח ഈ۱җ ೖ٘ߔ(গ੗ੌ੄ ೨ब) ਸ ੗઱ ೧ঠ ೤פ׮.
  5. ഈ۱җೖ٘ߔ Problem! ഈ۱, ೖ٘ߔ੄ ઱ӝо ցޖ ӡ׮! ૑ध੄ ҕਬо ੜ

    ੌযաӝ ਤ೧ࢶ ѐߊ౱੉ ؊ ੗઱ ഈ۱ೞৈঠ ೞҊ, ઁಿ੄ ಿ૕ਸ ֫੉ӝ ਤ೧ࢶ ೖ٘ߔਸ ؊ ੗઱ ߉ই ؊ ੗઱ ѐࢶೞৈঠ ೠ׮.
  6. 5%% ࠁా਷ ѐߊ੗о ѐߊ੉ ՘աҊ աݶ పझ౟ܳ ೠ׮. ੉Ѫ੄ ࣽࢲܳ

    ߄Բח Ѫਸ TDDۄҊ ੉೧ೞ੗. పझ౟ܳ ݢ੷ ٜ݅Ҋ పझ౟ܳ ాҗೞח ௏٘ܳ ૞ח Ѫ. ਋ࢶ పझ౟ܳ ੘ࢿೞҊ ӒѦ ాҗೞח ௏٘ܳ ٜ݅Ҋ ੉ܳ ߈ࠂೞݶࢲ ઁ؀۽ ز੘ೞח૑ী ؀ೠ ೖ٘ߔਸ ੸ӓ੸ਵ۽ ߉ח Ѫ੉׮.
  7. 5%% TDD ೞݶ, ೖ٘ߔਸ ؊ ੗઱ ߉ਸ ࣻ ੓׮. ௏٘ܳ

    ߓನೞҊ Ҋё੉ ॄࠁҊ դ ٍী ঳ח ೖ٘ߔࠁ׮ ղ ఠ޷օীࢲ ߄۽ ೖ٘ߔਸ ঳ਸ ࣻ ੓׮
  8. 5%% TDD ೞݶ, ഈ۱੉ ਊ੉೧૓׮. పझ౟ۄח Ѫ਷ যڃ ೯زਸ ௏٘۽

    ੿੄ೠ Ѫ੉ӝ ٸޙী, ೯زਸ ੹׳ೡ ࣻ ੓Ҋ, ҕਬೞӝ एਕ૓׮.
  9. 5%% ✓ ࠺ਯ ੿࢑ ч੉ ৢ߄ܲ ҃਋, KlassStore੄ ੿࢑ ࠺ਯਸ

    ࣻ੿ೡ ࣻ ੓׮ ✓ ࠺ਯ ੿࢑ ч੉ ৢ߄ܰ૑ ঋ਷ ҃਋, য়ܨо ߊࢤೠ׮ TDD ೞݶ, ഈ۱੉ ਊ੉೧૓׮. పझ౟ۄח Ѫ਷ যڃ ೯زਸ ௏٘۽ ੿੄ೠ Ѫ੉ӝ ٸޙী, ೯زਸ ੹׳ೡ ࣻ ੓Ҋ, ҕਬೞӝ एਕ૓׮.
  10. 5%% ղо ૠ ௏٘ܳ թীѱ ҕਬೞҊ ੉೧दఃӝ औҊ թ੉ ૠ

    ௏٘ܳ ղо ੉೧ೞӝ औҊ, ղо Ӓ ࢎۈ੄ ੄بܳ ݽܰҊ ௏٘ܳ Ҋச ੌ੉ হҊ, ਊӝо ࢤӝݴ, పझ౟ ௏٘ীח ҳഅࠗ ௏٘ীࢶ ঌ ࣻ হח ੄ب৬ Ѿ੿੉ ࠁ੉ݴ, ௏٘ ܻ࠭ܳ ೞ؊ۄب, పझ౟ ா੉झ݅੉ۄب ഛੋೡ ࣻ ੓Ҋ, թ੉ ૠ ௏٘ܳ ݎ஖؊ۄب औѱ ঌইା ࣻ ੓Ҋ, ੉ ݽٚ Ѫٜ਷ ഈ۱ೡ ٸ ࠺ਊਸ ݒ਋ ദӝ੸ਵ۽ ઴ৈસפ׮.
  11. 5%% ࡅܲ ೖ٘ߔҗ, ੸਷ ഈ۱ ࠺ਊਵ۽ ਋ܻ ѐߊ౱੉ ૑धਸ औѱ

    णٙೞҊ ҕਬೞৈ ࠛഛपࢿী ؀࠺ೞח Ѫ੉ TDD੄ ೨ब
  12. 5%% But, ѐੋ੉ וՙח ѐߊ दр੉ ୭؀ 150%ө૑ טযզ ࣻ

    ੓਺ ೞ૑݅ ೐۽ં౟ ੹୓۽ ࠁݶ Ѿೣ੉ ઴যٜҊ, ഈ۱ ࠺ਊ੉ ઴য ੉ٙ੉ۄ ࠅ ࣻ ੓਺ TDDܳ ೠ׮Ҋ ೧ࢲ જ਷ ௏٘৬ ࢸ҅о աয়ח Ѫ਷ ইש. (ܻಖఠ݂ җ੿ীࢲ Ҋ޹ೞ૑ ঋח׮ݶ…)
  13. 5%% it(“যڃ ч੉ ઱য઎Ҋ, যڃ ઑѤੌ ٸ যځೞѱ ز੘ೠ׮”) {

    /// పझ౟ ா੉झ੄ ղਊ਷ // Arrange // Act // Assert } ഋక۽੘ࢿ೤פ׮
  14. 5%% 1. ޖ঺ਸ పझ౟ೡ૑ ੿ೞӝ য۵׮ݶ? ৻ࠗ ࢲ࠺झա ۄ੉࠳۞ܻܳ ॳ૑

    ঋח ௏٘ࠗఠ ੘ࢿೠ׮.
 ੑ۱җ ୹۱੉ زӝী ੌযաח ݺഛೠ ೣࣻࠗఠ ੘ࢿೠ׮. Private ೣࣻח ੘ࢿೞ૑ ঋח׮. ԙ పझ౟ ௏٘ࠗఠ ૢ ೙ਃח হ׮. ই઱ ઑӘ੄ ؀৉ਸ ٜ݅য فח Ѫ੉ ب਑ਸ ઴ ٸо ੓׮.
  15. 5%% 2. పझ౟ܳ ాҗ೮חؘ ܻಖఠ݂਷ যڌѱ ೧ঠೞա? పझ౟ܳ ాҗೞӝ ਤ೧

    ੘ࢿೠ ௏٘׮ࠁפ Ҷ੉ ֢୹غ૑ ঋইب غח ࠗ࠙ਸ ֢୹ೞѢա, ߄਍؊ܻܳ ֈযоח ҃਋о ߊࢤೞӝ ݃۲ੋؘ, ੉۠ ࠗ࠙ਸ ઺੼੸ਵ۽ ѐࢶ೤פ׮. ೙ਃೞ׮ݶ ܻಖఠ݂ ب઺ী ா੉झܳ ୶оೞৈب ؾפ׮.
  16. 5%% 3. ӝઓী ੓؍ ۽૒ী ӝמਸ ୶оೞݶࢲ పझ౟ܳ ೧ঠೞחؘ ੉

    ҃਋ূ? नӏ ӝמ੉ ٜযт খ/ٍ ۽૒੄ ੄ઓࢿਸ ੌױ рױೞѱ ٜ݅Ҋ, ୶࢚ ௿ېझ/ੋఠಕ੉झա ೣࣻ۽ ٜ݅যߡ݀פ׮. ӒܻҊ աࢲ ೧׼ ۽૒ খࠗ࠙ਸ MockingೞҊ పझ౟ܳ ੘ࢿ೤פ׮. ӒܻҊ ਗೞח ӝמਸ ୶оೞҊ, ܻಂఠ݂ ೡ ٸ ٜ݅য૓ ୶࢚ ௿ېझ, ੋఠಕ੉झী ؀ೠ పझ౟ܳ ੘ࢿ೤פ׮.