Litmusとは何か?
Litmusとは、ワークフロー、可視性、 ターンアラウンド・タイム(処理を投げてから結果が返ってくるまでの時間)を改良するように設計され、
新しく統合されたテストケース管理とQA(Quality Assurance:品質保証)のためのツールです。
LitmusはMozilla CorpおよびMozilla Foundationによって開発されました。
Litmusのホームページは以下のhttp://wiki.mozilla.org/Litmusです
(Mozilla 製品用のLitmus テストサイトは、http://litmus.mozilla.org/です)。
また、Mozilla QA Wiki サイト(http://wiki.mozilla.org/Main_Page)やコミュニティ内のQAイベントに対する
Mozilla QA ブログ(http://weblogs.mozillazine.org/qa/)も参照してください。
Litmusの基礎
LitmusはMozilla QAやコミュニティ内のQAチームにも使用されています。
Litmusで行うテストは、Mozillaプロジェクトの品質を維持することと、起こりうるエラーや問題を発見する手助けになっています。
そして、このドキュメントはLitmusを使用する手助けとなるでしょう。
Litmusはいつでも好きなテストに利用できますが、特にコミュニティ内でのTestday(QAコミュニティで一斉に製品テストを行う日)には、
その結果を管理するために使われます。Testdayの開催日時は我々のブログで告知されています。
もしどのビルドをテストすべきか知らなかったり、Litmusについての質問があったりするならば、irc.mozilla.org(http://irc.mozilla.org/)上で、
Testday期間中であれば#testdayチャンネルで、または#qaチャンネルでいつでも質問してください。
もしあなたがQAの手伝いに興味があるなら、Bugday(QAコミュニティで一斉に最新のビルドをテストし、バグの発見を行う日)に参加していただければ幸いです。
このドキュメントの内容は以下で構成されています :
1. Litmusのユーザ登録
2. テスト前の準備
3. テストグループの選択
4. パーセンテージの意味は何ですか?
5. どのサブグループを使用すればよいですか?
6. テストの実行や結果の投稿はどのようにすればよいですか?
7. テスト結果の検索
8. Litmus FAQ
1. Litmusのユーザ登録
テストをしたり、結果を管理するには、ユーザ登録してLitmusにログインする必要があります。
登録方法
1. http://litmus.mozilla.orgへアクセスします
2. “Log-in”をクリックします
3. Create a new Litmus account内の各項目を記入します

各項目の記入内容は以下の通りです。
*Email:
これは後でLitmusにログインする際に使用します。Litmusはスパマー達からEmailアドレスを守るために措置をとっていますが、スパムを完全に取り除くことは出来ません。それ故、もし心配であればメインで使用しているEmailアドレスではなく、フリーのウェブメールサービス(YahooやGmailのようなもの)を使用することを推奨します。
*Real Name:
あなたの報告したテスト結果を表示する際に用いられる名前です。
*IRC Nickname:
多くのテスト協力者はリアルタイムチャットのためにMozNetとも呼ばれるMozilla IRC System irc.mozilla.org(http://irc.mozilla.org/)を使用しています。もしMozNetに参加するつもりがない場合でも、ここには好きなニックネームを入力できます(他のテスト協力者と異なる名前であれば何でもよいです)。これらの名前(Real NameとIRC Nickname)はあなたの行ったテスト結果とともに表示されます。IRC Nicknameを入力しなければReal Nameが使用され、Real nameも入力しなければEmailアドレスが表示されます。
*Password:
Litmusにログインするためのパスワードを入力してください。もしパスワードを紛失したり、忘れたりした時にはどのように再発行するかの手順はここ(以下の8. Litmus FAQ)を参照してください。
テストを実行する前に、新しいプロファイルを作成することを推奨します。
新しいプロファイルの作成方法は、http://www.mozilla-japan.org/support/firefox/profileを参照してください。
2. テスト前の準備
Litmusでテストを始める前に、あなたが使用するシステム(OS、プラットフォーム)や製品(Firefox、 Thunderbird、 Calendar等)、そしてlocaleとbuild IDの情報を確認することが必要です。それらが分かったら、適当なシステムやlocaleなどを選択して、テストを行います。

*製品:
あなたがテストしたいMozilla製品(例えばFirefoxやThunderbird)を選択してください。
*ブランチ:
あなたがテストをしようと思っている製品によって、いくつかの選択肢があります。例えばFirefoxの場合、トランクや1.5ブランチ、2.0ブランチがあります。
1.5ブランチ: 1.5.xツリーからのビルドです。つまり、1.5.0.0から1.5.0.xのような、1.5ツリーからのビルドやリリースされた製品のことを指します。
2.0ブランチ: 2.0ツリーからのビルドです。つまり、2.0.xのようなビルドやリリースされた製品のことを指します。
*トランク:
最新の開発テスト用のビルドです。現在はMinefieldとGranparadisoビルドです。
*build ID:
build IDはMozilla製品がいつビルドされたのかという日時を示す10桁の数字で構成されています。build IDを10桁全て正しく入力する事で、Mozilla QAチームの仕事は簡単になります。そこで、テストしようとしている製品のbuild IDを知るための、いくつか方法をご紹介します。
1. 手動:もしあなたがTalkbackをインストールしているなら、Talkbackを使えば、他の方法よりも確実にbuild IDを知ることが出来ます(http://www.mozilla-japan.org/support/firefox/faq#talkback)。またMozilla QA wikiでは、build IDを手動で確かめる方法も紹介しています。
(http://wiki.mozilla.org/MozillaQualityAssurance:Build_Ids)
2. Nightly Tester Tools: FirefoxとThunderbirdの両方で利用できるNightly Tester Toolsという拡張機能をインストールすると、Mozilla製品をテストするためのたくさんの便利な機能を使えるようになります。この中には、実行しているビルドのbuild IDを手軽にタイトルバーに表示する機能も含まれています。この拡張機能はaddons.mozilla.orgからダウンロードできます。(https://addons.mozilla.org/ja/firefox/addon/1391)
*platform:
あなたがテストを行おうとしているプラットフォーム(Windows、 Linux、 Sun、 Mac)を選択してください。
*OS:
あなたのOS(例えばWindows VistaやLinuxなど)を選択してください。
*locale:
これはあなたが実在する地球上の物理的な位置の事ではではなく、ロケールとは利用する言語や国・地域の指定のことです。FirefoxやThunderbirdといった製品は30以上の言語/地域に合わせて利用できます。なので、ここでは、あなたがインストールした製品のロケール(例えばja、en-US、DE、zh-CN等)を選択する必要があります(ロケールの種類を知りたければhttp://www.mozilla-japan.org/products/firefox/all.htmlなどを参照してください)。
3. テストグループの選択
(あなたが選択したシステム情報によりますが)Litmusには以下のような、それぞれ違った内容のテストケースを含む複数のテストグループがあります。
* Basic Functional Tests (BFTs)
* Full Functional Tests (FFTs)
* Smoketests
* Surf`s up - A Fun Smoketest!
* Localization(l10n)

Litmusのテスト分野
あなたがテストケースを実行するために使える時間の長さに応じて、テストグループを選択することができます。
* Basic Functional Tests(BFTs):
Smoketestよりも、多くのテストケースを含み、インストールからセキュリティ機能まで、製品のあらゆる側面をカバーします。
* Full Functional Tests(FFTs):
Litmusの中で最も大きなテストグループです。製品の全ての側面に対して、非常に多くのテストケースを含みます。
* Smoketests:
このテストは、一般的に行われる操作(インストール、アンインストール、ユーザビリティ)をカバーします。様々な操作の組み合わせも含みます。標準的なテストです。
* Surf`s up - A Fun Smoketest!:
Litmusの中で最新のテストグループです。これは、10分程しかかからない、素早く行えるSmoketestの一部です。メールのチェックやファイルのダウンロード等、インターネットを使ってユーザが一般的に行う操作についてのテストです。
* Localization (l10n):
ローカライズビルドのためのテストであり、ローカリゼーションビルドにとって大切な側面をカバーします(例えば、製品の内容全てが翻訳されていて、en-USビルドのように動くかどうか確認する等)。新しい製品のリリース前や、あなたがL10nチームの一員である場合、これは重要なテストです。
4. パーセンテージの意味は何ですか?

テストの実行率はplatform(Windows、Mac、Linux)とbuild IDに基づいて表示されています。"community testing coverage"は、あなたや他のテスト協力者がどの程度テストを終えたかを示し、"personal testing coverage"は、あなた個人がサブグループの中のテストをどの程度終えたかを示しています。
5. どのサブグループを使用すればよいですか?

我々はテスト協力者みなさんのご協力に感謝していますが、コミュニティによるテストがまだ完了していないグループやサブグループのテストを選んでいただけると、我々にとってより大きな手助けとなります。我々はあなたの協力を求めていますが、あなたがどのサブグループを選択し、テストすればよいのかを、我々が決定することはできません。提案できる最初の選択肢は、明らかに、まだ100%ではないサブグループを選ぶ事です。
1. さもなければ、あなたが今テストしようとしていたOSとは違うOSが動いているマシンを持っていて、かつ、そのOSでのテストの実行率が低いのならば、そのマシンからいくつかテストを行ってください。
2. あなたが違うロケールのテストを行ってくれるならば、新たなロケールの製品をダウンロードし、それを使ってテストしてください。
3. (出来れば人気の高い)拡張機能やテーマをインストールし、そのままテストを行ってください。
4. テストの実行率にかかわらずあなたが興味のあるサブグループを選択し、とにかくテストを行ってください。
そして最終的には
5. Litmusでカバーされているかどうかに関わらず、あなたが興味を持っている分野を選び、あなた自身が項目を考えてテストしてください。何か見つけたら、ぜひQAチームに知らせてください。
6. テストの実行や結果の投稿はどの様にすればよいですか?
Litmusでテストを実行することはとても簡単で、特に専門技術を必要としません。実行するテストケースのメインテスト画面では、テストの一連の流れを確認できます。どのような手順で実行しているか、どのような結果が期待されているかを確認してテストを進めてください。

一つのテストケースを表示、またはサブグループ内のすべてのテストケースを表示することを選択できます。
*すべて表示: “show all”をクリックすると、テストケースのリストを展開し、サブグループ内のすべてのテストケースの一覧を表示します。
*すべて非表示: “hide all”をクリックすると、サブグループ内のすべてのテストケースを非表示にします。
*表示: "View"をクリックすると、一つのテストケースが表示され、このテストケースに関する最新の結果も表示します。

1. Steps to Perform:
すべてのテストケースには、そのテストケースを実行する際にすべき手順が記載されています。テストケースを実行する際は、この手順に従ってください。
フィードバックしたいことや、お気づきの点がある場合、またテストケースの内容が分かりにくい、問題があるといった場合には、コメント欄にその旨を記述することができます(ただしコメント欄は必ず英語で記述してください)。
2. Expected Result:
テストケースを実行した際に、最終的にどのような結果になるべきか、が明記されています。もし何かご不明な点があれば、Mozilla QAチーム が開催しているTestdaysの期間中であれば、irc.mozilla.org 上の#testdayチャンネル等で、モデレータと連絡を取ることができます。
3. Results:
実際にテストを行ってみた結果を、4つのテスト結果項目の中から選んでください。
Not Run:このテストケースは実行していない/しなかった(デフォルトでチェックされています)
PASS:テストケースを実行し、期待される結果(Expected Result)と一致が確認できた
Fail:期待される結果(Expected Result)とは一致しない結果が確認された
Test unclear/broken:タイプミスがある、新しいバージョンにおいて機能の一部が見当たらない等で、テストケースのどこかに問題がある
4. Comments:
テスト協力者は、任意のテストケースに対してコメントを残すことができます。このコメントはLitmusの支援や、問題やエラーを再現する手がかりとなりますので、ぜひ具体的なコメントを残してください。
*コメントする際の注意点:
我々は膨大なコメントを管理しているので、簡潔なコメントを残して貰えると助かります。 また、コメントを記入する時には以下のように具体的に、かつ英語で記述してください。
良い例(分かりにくい、または問題あるテストケースにて): "Feature is now called "Organize Bookmarks" and not "Manage Bookmarks" like in the Testcase." (訳:ある機能がテストケースの中では"Manage Bookmarks"と呼ばれているが、実際には"Organize Bookmarks"と呼ばれている)
悪い例(失敗したテストケースにて): "Failed, because don`t work" (訳:動かなかったので、失敗した)
テストケースの実行結果をMozilla QAチームに投稿するには、2つの選択肢があります。
*この結果だけを投稿:
"Submit This Result"をクリックすると、そのボタンをクリックしたテストケースの結果とコメントを投稿できます。
*すべての結果を投稿:
"Submit All Results"をクリックすると、このテストグループ内のすべてのテストケースの結果とコメントを投稿できます。
7. テスト結果の検索
結果の検索について
現在、我々が所有する全ての結果をテスト協力者の皆さんが検索することはできませんが、LitmusにはいくつかのReporting toolsが提供されています。
*Search Result(結果検索):
コメント付きの結果を検索できます。
*Advanced Result(詳細検索):
分野や日付などで条件を絞り検索できます。
*Testdays:
コミュニティ内のQAチーム主催で行ったTestdaysで得たテストの結果から情報を得ることができます。
*Statistics(統計):
Litmusやテスト実行数上位者に関する統計データを表示します。
*Searchbar(検索バー):
Litmusにあるすべてのページの下部には、テストケースやテスト結果を簡単に探すことが出来るリンク集があります。
8. Litmusに関するよくある質問(FAQ)
Q1:Litmusインストール情報が欲しいのですが、どこにその情報が記載されていますか?
A1: http://wiki.mozilla.org/Litmusを参照ください。
Q2:どれくらいの量のテストケースをTestdayで、実行しなければならないですか?
A2:Litmusでのテストは競争ではありません。ただ時間が許す限り実行してください。Testdayにおけるテストの最大または最少実行量はありません。”Statistics”のページにおいてLitmus上で長いこと活動してくださっているテスト協力者15名を表示していますが、テスト協力者みなさんがテストしてくださっていることに我々は感謝しています。テストの結果はLitmusと製品の質の改良の手助けになっているので、ぜひ厳密にテストしてください。多くのテストケースで何も考えずにただ”PASS”とクリックするよりも、厳密に行われたテストの結果はとても有益です。
Q3:テスト中にバグを見つけました。どこに知らせればいいですか?
A3:バグトラッキングデータベースBugzillaに知らせる事ができます。既に同様なレポートが報告されていないかどうか、以前のバグレポートを検索してください。もし既に報告済みであれば、新たに報告はしなくてもよいです。また、Testdayや他のコミュニティイベントの期間中であれば、irc.mozilla.org 上の#testdayや#qaチャンネルにもぜひ報告してください。
Q4:Litmusのパスワードを忘れてしまったら、どのようにパスワードを再発行すればよいですか?
A4: irc.mozilla.org 上の#qaまたは#testdayにおいて、モデレータに連絡を取ってください。モデレータは、ほとんどLitmus管理者が行っているので、モデレータに申請していただければ、Litmusに登録した時に、あなたが記入したEmailアドレスにパスワードを送信することが出来ます。