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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Nobutaka OSHIRO
March 06, 2016
Technology
1.6k
2
Share
Meteor 1.3 Testing (beta)
2016.3.6 の Meteor 勉強会の発表資料です。
Nobutaka OSHIRO
March 06, 2016
More Decks by Nobutaka OSHIRO
See All by Nobutaka OSHIRO
190828 VSCode + Remote Development ExtensionでElm爆速開発環境構築
notakaos
0
150
GraphQL勉強会 2017.6.7
notakaos
5
1k
Other Decks in Technology
See All in Technology
NFLコンペ2026 解法
lycorptech_jp
PRO
0
130
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
300
『家族アルバム みてね』における インシデント対応との向き合い方 / Approach incident response in Family Album
kohbis
2
270
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
150
CloudFront VPCオリジンとVPC Latticeサービスの内部ALBをマルチアカウントで一元利用しよう
duelist2020jp
5
260
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
370
A Harness for Behaviour: how to get AI to generate code that does what we intend, or "TDD in the age of AI"
xpmatteo
1
520
基礎から解説!Icebergで紐解くSnowflake×Databricks連携の現在地
cm_yasuhara
0
400
Kiro CLI v2.0.0がやってきた!
kentapapa
0
220
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
0
150
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
610
long-running-tasks
cipepser
2
440
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
370
Git: the NoSQL Database
bkeepers
PRO
432
67k
How STYLIGHT went responsive
nonsquared
100
6.1k
New Earth Scene 8
popppiees
3
2.3k
Are puppies a ranking factor?
jonoalderson
1
3.4k
Faster Mobile Websites
deanohume
310
31k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
130
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.8k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
130
A Modern Web Designer's Workflow
chriscoyier
698
190k
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!