English

仕様書とテストの ライフサイクル

スタッドホルム・オリ

iA, HTML5 Doctor

仕様書

仕様書の必要は

“Interoperability”

相互運用性

Without this we’re screwed. Remember the browser wars

スペックはどこから?

All three groups should be involved in a spec’s development

W3C仕様書のステージ

  1. 下書き:Editor’s Draft (ED)
  2. 草案:Working Draft (WD)
  3. 最終草案:Last Call Working Draft (LC, LCWD)
  4. 勧告候補:Candidate Recommendation (CR)
  5. 勧告案:Proposed Recommendation (PR)
  6. W3C勧告:Recommendation (REC)

(Ref)

W3C仕様書のステージ

W3C勧告 = 仕様書 = スタンダード

下書き Editor’s Draft (ED)

→ Exploring

草案 Working Draft (WD)

→ Design phase

最終草案 Last Call Working Draft (LC, LCWD)

→ Transition

勧告候補 Candidate Recommendation (CR)

→ Test, implement, refine

勧告案 Proposed Recommendation (PR)

ここまですれば、

→ Transition

W3C勧告 Recommendation (REC)

→ Maintenance

スペックの一覧

スペックの一覧

スペックの一覧

スペックの一覧

http://www.w3.org/TR/…

TR = Trash

古くさいのスペックご注意!

基本

WHATWG “Living standard”

WHATWG doesn’t make separate versions of a spec based on those stages. No confusion about which version to look at.

WHATWG “Living standard”

  1. Idea; yet to be specified
  2. First draft
  3. Working draft
  4. Last call for comments
  5. Awaiting implementation feedback
  6. Implemented and widely deployed

(Ref)

However, WHATWG follows a similar process, just on a per-feature level, and all in the same document.

W3Cスペックのあり方

例:Flexbox

  • : WD box
  • : WD box
  • : WD box
  • : FPWD box
  • : WD flexbox
  • : WD flexbox
  • : WD flexbox
  • : LCWD flex
  • : CR flex
  • : ED flex
  • ↑ 最新スペックは下書き

例:Flexbox

CRでも最新じゃない

WDは全然違います

「TR = Trash」を忘れないでね!

→ Talk about how ED/WD is like the develop branch of a repo, with CR like a release branch and REC like a tag. The most up-to-date version is develop.

テスト

テストの歴史

なぜテストを作る?

テストの
ライフサイクル

テストの作り方

テストは足りなかったら…

テストが足りない例

CSS3 Transitions vs Rodney Rehm

ロッドニーさんはCSSアニメーションのスペックを細かくテストして、いろんなブラウザーバク、スペック問題、相互運用性問題を見つけた。

彼のテストはテストスイートに入っていて、そして、バグリポートとスペック修正も出ます。

→ Talk about Rodney Rehm turning over the stone of CSS Animations plus JS, and finding a lot of creepy-crawlies

テストが足りない例

CSS3 Transitions: Thank God We Have A Specification!” by Rodney Rehm

ヘルプ!

なぜ?

私に「相互運用性」は1番大事

これからどうする

→ Move the Web Forward http://www.movethewebforward.org/

Save the Web,
Write Some Tests!

良いウェブ未来を
一緒に作ろう!

スペックのリンク

テストのリンク