Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Meteor 1.3 Testing (beta)
Search
Nobutaka OSHIRO
March 06, 2016
Technology
2
1.3k
Meteor 1.3 Testing (beta)
2016.3.6 の Meteor 勉強会の発表資料です。
Nobutaka OSHIRO
March 06, 2016
Tweet
Share
More Decks by Nobutaka OSHIRO
See All by Nobutaka OSHIRO
190828 VSCode + Remote Development ExtensionでElm爆速開発環境構築
notakaos
0
130
GraphQL勉強会 2017.6.7
notakaos
5
980
Other Decks in Technology
See All in Technology
クラウドサービス事業者におけるOSS
tagomoris
1
820
自動テストの世界に、この5年間で起きたこと
autifyhq
10
8.5k
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
16
6.8k
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
310
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
160
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
2k
室長と気ままに学ぶマイクロソフトのビジネスアプリケーションとビジネスプロセス
ryoheig0405
0
370
2.5Dモデルのすべて
yu4u
2
860
スタートアップ1人目QAエンジニアが QAチームを立ち上げ、“個”からチーム、 そして“組織”に成長するまで / How to set up QA team at reiwatravel
mii3king
2
1.5k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
590
アジャイル開発とスクラム
araihara
0
170
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
182
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Building Adaptive Systems
keathley
40
2.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Become a Pro
speakerdeck
PRO
26
5.1k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Statistics for Hackers
jakevdp
797
220k
Transcript
Meteor 1.3 Tes,ng 3/6 Meteor ษڧձ in ΪʔΫΦϑΟεܙൺण େ ৴
(OSHIRO, Nobutaka)
Who? • גࣜձࣾJ-hack CTO݉ϓϩάϥϚʔ • MeteorΞϓϦاըɾ։ൃɾӡ༻ɾอक • Meteorྺ 10ϲ݄ •
Twi5er: @notanota • GitHub: @nobutakaoshiro • Qiita: @n-oshiro
My Recent Ac*vity • 2016 • 1/23: Meteorษڧձൃද • 1/30:
Meteor iOSΞϓϦ։ൃϋϯζ Φϯओ࠵ • 3/6: Meteorษڧձൃද <- ͍·͜͜
Meteor 1.3 Tes,ng
ຊͷൃද༰ Meteor 1.3-beta.12 Λجʹ͍ͯ͠·͢ɻ Metoer 1.3 ਖ਼ࣜϦϦʔε࣌ʹ༷͕มΘΔՄೳੑ͕͋Γ·͢ɻ
ΞδΣϯμ • ςετͱ • ςετछྨʹ͍ͭͯ • Tes%ng in Meteor 1.3ɹ
• Full app tes%ng & Module tes%ngɹ • DEMOɹ
ςετͱ ιϑτΣΞςετʢso#ware testʣɺίϯϐϡʔλͷϓϩά ϥϜΛ࣮ߦ͠ɺਖ਼͘͠ಈ࡞͢Δ͔ɺඪͱ࣭ͨ͠ʹ౸ୡ͍ͯ͠ Δ͔ɺҙਤ͠ͳ͍ಈ࡞Λ͠ͳ͍͔Ͳ͏͔Λ֬ೝ͢Δ࡞ۀͷ͜ͱͰ ͋Δɻ — ιϑτΣΞςετ - Wikipedia
ςετΛॻ͘͜ͱͰ... • ߴ࣭ͳ(όάͷগͳ͍)ঢ়ଶΛҡ࣋Ͱ͖Δ • ίʔυͷमਖ਼͕༰қʹͳΔ • ࣗ৴Λ࣋ͬͯίʔυͷϦϑΝΫλϦϯά͕Ͱ͖Δ • όάͷൃݟʹͭͳ͕Δ •
ظ͞ΕΔಈ࡞ΛυΩϡϝϯτԽͰ͖Δ
ςετछྨ(1/2) • ୯ମςετ (Unit test) • ͋ΔϞδϡʔϧ͕ਖ਼͘͠ಈ࡞͢Δ͔Λ͔֬ΊΔ • ݁߹ςετ(Integra.on test)
• ෳϞδϡʔϧ͕ڠௐͯ͠ਖ਼͘͠ಈ͘͜ͱΛ͔֬ΊΔ • ड͚ೖΕςετɺe2eςετ(Acceptance or end-to-end test) • ΞϓϦશମͷಈ࡞ΛϒϥβϨϕϧͰݕূ͢Δ
ςετछྨ(2/2) • ෛՙςετ (Load test, Stress test) • ෛՙΛ͔͚ΔͱͲ͏ͳΔͷ͔ɺͲ͜·Ͱ͑ΒΕΔͷ͔Λ֬ ೝ͢Δ
• ܧଓతΠϯςάϨʔγϣϯςετ (Con0nuous Integra0on test) • ఆظతɺίϛοτ୯ҐͰςετΛ࣮ߦ͢Δ͜ͱͰෆ۩߹Λૣ ظൃݟ͠ɺΤϥʔ͕ແ͍ঢ়ଶΛอͭ
Tes$ng in Meteor 1.3
Tes$ng in Meteor 1.3 (1/3) • meteor create ࣌ʹ package.json
ͱ tests.js ͕ࣗಈੜ͞Ε ΔΑ͏ʹͳͬͨ • Meteor 1.3 ͰσϑΥϧτͰ mocha ͱ Chai ͕༻Մೳ • prac7calmeteor:mocha package ͷՃ • prac7calmeteor:chai package Ұॹʹಋೖ͞ΕΔ
Tes$ng in Meteor 1.3 (2/3) // tests.js import assert from
"assert"; import { name as appName } from "./app.js"; describe("app", () => { it("should export its name", () => { assert.strictEqual(appName, "app"); }); });
Tes$ng in Meteor 1.3 (3/3) • Meteor 1.3 ͷ Module
ػೳͰςετ͕؆୯͔ͭಡΈ͘͢ॻ͚ Δ • ৽͍͠ meteor test ίϚϯυͷՃ • Meteor 1.3 ͔Β tests/ σΟϨΫτϦ֎ʹஔ͍ͯ͋Δ *.app- test[s].*, *.tests.* ͷϑΝΠϧࣗಈతʹಡΈࠐ·Εͳ ͍Α͏ʹͳͬͨ
Full app tes*ng & Module tes*ng
# Full app testing (integration test) meteor test --full-app --driver-package
<driver-package> # Module testing (Unit test) meteor test --driver-package <driver-package>
DEMO
# Install Meteor curl https://install.meteor.com/ | sh # Create Meteor
app meteor create app --release 1.3-beta.12 cd app # Install node_modules npm install # Run meteor app meteor # Run meteor test meteor test --driver-package practicalmeteor:mocha --port 3100 ./ meteor test --full-app --driver-package practicalmeteor:mocha --port 3100 ./
Conclusion • Meteor 1.3 ͔Β mocha ͱ chai ͕σϑΥϧτͰར༻Մೳʹ •
Module ػೳͰςετ͕ॻ͖͘͢ͳͬͨ • Meteor 1.3 ͷϕʔλ൛ͷͨΊɺࠓޙ༷͕มߋ͞ΕΔ͔͠Ε ͳ͍ͷͰࠓޙͷಈʹ
References • Meteor Guide v1.3 Migra2on (Dra6) h9p:/ /guide.meteor.com/v1.3/1.3-migra2on.html •
Meteor Guide tes2ng.md (Dra6) h9ps:/ /github.com/meteor/guide/blob/tes2ng-modules-content/ content/tes2ng.md • GitHub - meteor/todos h9ps:/ /github.com/meteor/todos
ࠂ
ʦ࿕ใʧ͜͏ͬͯReactΛMeteor1.3Ͱ͏ΜͩϋϯζΦϯʂ h"p:/ /meteor-tokyo.connpass.com/event/27388/ 3/26() 13:00-17:30 ։࠵༧ఆ
Q&A
THANK YOU!