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

full test also want to end within 50ms

full test also want to end within 50ms

Tatasuro Hisamori

September 21, 2013
Tweet

More Decks by Tatasuro Hisamori

Other Decks in Technology

Transcript

  1. U6UJMT full  test  also  want  to  end  within  50ms •

    ςετΛḿΒͤΔϢʔςΟϦςΟ • ઀ଓઌDBΛςετ༻ʹஔ͖׵͑Δ • ςετຖʹىಈ͢Δmemcached౳ͷport൪߸Λஔ͖׵͑ Δ • ͳͲɺPerlҎ֎ͷϛυϧ΢ΣΞ࿈ܞΛαϙʔτ͢Δ 13೥9݄22೔೔༵೔
  2. UVUJMT.BLF)FMQFS full  test  also  want  to  end  within  50ms •

    ϔϧύϞδϡʔϧ • खݩͰmake  testΛ૸ΒͤΔ࣌ʹTest::Prettyʹ੾Γସ͑ͨ ͍ͳͲͷཁٻΛٵऩ͢Δ • runtests  ʹςετҰཡΛ౉͢લʹγϟοϑϧ͢Δ • ͳͲͷॲཧΛߦ͏ 13೥9݄22೔೔༵೔
  3. UVUJMT.BLF)FMQFS full  test  also  want  to  end  within  50ms •

    ςετ࣮ߦॱংͷγϟοϑϧ • ͓͢͢Ί • ஌Βͳ͍ؒʹॱংʹґଘ͢ΔςετΛॻ͍ͯ͠·ͬͯ΋ ؾ͚ͮΔ • DBͷcleanup࿙Ε͕ൃੜ͢Δͷʹؾ͔ͮͳ͍έʔε • ಉ͡ϑΝΠϧ໊Λҧ͏ςετ͔Βࢀর͢Δέʔε 13೥9݄22೔೔༵೔
  4. • ͔͔࣌ؒΓ͗͢ • ϒϥϯν͕͍ͭ͘΋͋Δͱ݁Ռ͕Θ͔Δ·Ͱ଴ͨ͞ΕΔ • ϝϯόʔ  /  ։ൃҊ͕݅૿͑Ε͹૿͑Δ΄Ͳ଴ͨ͞ΕΔ • ଴ͨ͞Εͨ຤ʹ

     fail  ͱ͔ͯͨ͠Β΍Δؾ͕ͳ͘ͳΔ • ࣄނϦεΫ͕ߴ·Δ • ʮ஗͍͔ΒखݩͰमਖ਼ͨ͠෼͚ͩςετͯ͠ϦϦʔεʯ • ͦͯ͠୭΋ϑϧςετΛ͠ͳ͘ͳͬͯ… ໰୊఺ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  5. • طଘͷςετΛॻ͖׵͑ͳ͍ • ॻ͔Εͨςετ͕ͦͷ··ಈ͘͜ͱ • طଘͷCIαʔόͱ਌࿨ੑ͕ߴ͍ • Ukigumo::Server  ͸ܧଓͯ͠࢖͍͍ͨ •

    εέʔϧ͢Δ͜ͱ • ςετ਺͕10ഒʹͳͬͯ΋ػೳ͢Δ࢓૊ΈͰ͋Δ͜ͱ ߴ଎Խͷલఏ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  6. • ෼ࢄ࣮ߦͤ͞Δ • ෳ਺ͷαʔόͰ෼ࢄ࣮ߦ͠ɺϊʔυ௥ՃͰεέʔϧ͢Δ Α͏ʹ͍ͨ͠ • αʔόͷ௥Ճ/ϝϯς͕༰қ • ؆୯ͳconfigͰ؅ཧͯ͠ΏΔ;Θʹ௥Ճ/ϝϯς͍ͨ͠ •

    ࠶࣮ߦ΋؆୯ʹग़དྷΔΑ͏ʹ͍ͨ͠ • ෳ਺ͷαʔόʹ౤͛ΔͷͰɺ໰୊͕͋ͬͨ࣌ʹ͸࠶࣮ߦ Λ͙͢Ͱ͖ΔΑ͏ʹ͍ͨ͠ ࣮૷ํ਑ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  7. Ϛελϊʔυ Ϋϥελϊʔυ 'test1.t' 'test2.t' 'test3.t' 'test4.t' 'test5.t' 'test6.t' ࣮ߦର৅ςετ 'test1.t',

    'test6.t' 'test2.t', 'test4.t' 'test3.t', 'test5.t' ෼ࢄ࣮ߦͷ࿮૊Έ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  8. • ςετͷϐοΫΞοϓ/γϟοϑϧ/ׂ౰ • File::Find,  List::MoreUtils  Ͱऔಘͯ͠Ϋϥελʹׂ౰ • Ϋϥελϊʔυ΁ͷ࣮ߦ໋ྩ  /݁Ռडऔ •

    Parallel::ForkManager,  Net::OpenSSH  Ͱฒྻ࣮ߦ • ݁Ռͷύʔεͱ  Ukigumo  ΁ͷ  post • fail਺ͷΧ΢ϯτ,  LWP  Ͱ  post • ࣮ߦ • ϊʔυଆͰ  TAP::Harness::runtests  ʹςετΛ౉࣮ͯ͠ߦ ࣮૷ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  9. • ϚελϊʔυͰ࠶࣮ߦWebAppΛىಈ • ࣮ࢪঢ়گΛอଘ͍ͯ͠ΔSQLite͔Β౰֘ϒϥϯν৘ใΛ ফ͚ͩ͢ • Chrome  ֦ுͰ  Ukigumo  ʹϘλϯ௥Ճ

    • Ukigumo  ͦͷ΋ͷʹखΛೖΕͨ͘ͳ͍ ࣮૷ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔
  10. ߴ଎Խͷ݁Ռ full  test  also  want  to  end  within  50ms OPEF

    TFDT ˣ OPEF TFD 13೥9݄22೔೔༵೔
  11. • ૉ௚ʹαʔόΛ଍ͤ͹εέʔϧ͢Δ • αʔόΛηοτΞοϓͯ͠ɺ୯ಠͰmake  test͕௨Ε͹Ϋ ϥελʹ౤ೖՄೳ  -­‐>  PuppetͰOK • ࠶࣮ߦϘλϯ͕ؾܰʹԡͤΔ

    • ͍͍ͩͨ180ඵͰ݁Ռ͕ฦͬͯ͘ΔͷͰɺԿΒ͔ͷࣦഊ ͕͋ͬͯ΋͙͢࠶࣮ߦͰ͖Δ • खݩͰ΍ΔΑΓpushͨ͠΄͏͕଎͍ • ଞͷਓͷ։ൃΞΫςΟϏςΟ͕ݟ͑΍͘͢ͳΔ ݁Ռ full  test  also  want  to  end  within  50ms 13೥9݄22೔೔༵೔