[from now] 2013/03/17 18:49:44

diff --git a/docs/locale/ja/LC_MESSAGES/interaction_based_testing.po b/docs/locale/ja/LC_MESSAGES/interaction_based_testing.po
index f283e0f..14b645e 100644
--- a/docs/locale/ja/LC_MESSAGES/interaction_based_testing.po
+++ b/docs/locale/ja/LC_MESSAGES/interaction_based_testing.po
@@ -34,7 +34,7 @@ msgstr ""
 "相互作用中心のテストは2000年代前半に登場したExtreme Programming(XP)"
 "から生まれた設計、テストの手法です。"
 "オブジェクトの状態ではなく振る舞いに注目し、メソッドを呼び出した際に"
-"コラボレータと共にオブジェクトが意図したとおりに相互作用したか検証します。"
+"コラボレータと共にオブジェクトが意図したとおりに相互作用するか検証します。"

 # debfa7f02af44cb6a423fd0a260359be
 #: ../../interaction_based_testing.rst:10
@@ -56,8 +56,8 @@ msgid ""
 "the publisher and its subscribers. Such an implementation is often called a "
 "*mock object*."
 msgstr ""
-"どのように\\ ``Publisher``\\ をテストすればよいでしょうか？状態ベースのテスト"
-"ではpublisherがsubscriberを追跡できているか検証します。しかし一番の興味は、"
+"どのように\\ ``Publisher``\\ をテストすればよいでしょうか？状態中心のテスト"
+"ではpublisherがsubscriberを追跡できているか検証します。しかし一番の関心事は、"
 "publisherが送ったメッセージがsubscriberで受信できるかです。これを確かめる"
 "には\\ ``Subscriber``\\ の特別な実装を用意し、publisherとsubscriberの"
 "やり取りを監視します。このような実装を\\ *モックオブジェクト*\\ と呼びます。"
@@ -92,7 +92,7 @@ msgstr ""
 "よくあるJavaのモックフレームワークと同様に、Spockも"
 "\\ `JDK動的プロキシ <http://docs.oracle.com/javase/7/docs/api/>`_\\ (モックインタフェースの作成時)"
 "、\\ `CGLIB <http://cglib.sourceforge.net>`_\\ プロキシ(モッククラスの作成時)を使用してモックを"
-"作成しています。Groovyのメタプラグラミングと比べると、これらはJavaのコードに対してテストする際に"
+"作成しています。Groovyのメタプラグラミングと比べると、Javaのコードに対してテストする際に"
 "有利に働きます。"

 # d0dd89c9f6b144b0b02acbb9aa9f1181
@@ -146,7 +146,7 @@ msgid ""
 "Alternatively, the following Java-like syntax is supported, which may give "
 "better IDE support::"
 msgstr ""
-"または、IDEのサポートが得られやすいように、よりJavaのシンタックスに"
+"または、IDEのサポートが得られやすいように、よりJavaの構文に"
 "近い形で記述することもできます。"

 # 6b8b1190c5b442929500e1f6d669d45c
@@ -163,7 +163,7 @@ msgid ""
 "If the mock's type is given on the left-hand side of the assignment, it's "
 "permissible (though not required) to omit it on the right-hand side."
 msgstr ""
-"もしモックの型が左辺で指定された場合は、右辺で型を省略することができます(指定しても問題ない)。"
+"もしモックの型が左辺で指定した場合は、右辺で型を省略することができます(指定しても問題ありません)。"

 # 40f827a8103e457383377bbb220e02bd
 #: ../../interaction_based_testing.rst:70
@@ -173,10 +173,10 @@ msgid ""
 "``Subscriber``. Hence it can be passed to statically typed (Java) code that "
 "expects this type."
 msgstr ""
-"モックオブジェクトは文字通りその型の実装を作成します(クラスの場合は継承)。"
+"モックオブジェクトは文字通りその型の実装(クラスの場合はサブクラス)を作成します。"
 "別の言い方をすると、上記の例でsubscriberはis-a Subscriberです。"
-"これの意味するところは、この型を期待する静的型付けのコード(Java)に"
-"このオブジェクトを渡すことができます。"
+"これは、この型を期待する静的型付けのコード(Java)に"
+"このオブジェクトを渡すことができるということを意味しています。"

 # 92b15d3b0c0d44d8a26f37dffc24ea58
 #: ../../interaction_based_testing.rst:75
@@ -197,17 +197,16 @@ msgid ""
 "describe only what's relevant about an interaction, avoiding the over-"
 "specification trap."
 msgstr ""
-"Mockitのように、モックフレームはデフォルトでlenient(緩い)であるべきだと私たちは考えています。"
+"Mockitのように、モックフレームはデフォルトでlenient(緩い)であるべきだと考えています。"
 "これはモックオブジェクトに対して予期しないメソッド(別の言い方をすると、"
-"テストと関係のないインタラクション)の呼び出しが可能で、"
-"それの呼び出しに対しデフォルトのレスポンスを返すことを意味しています。"
+"テストと関係のない相互作用)の呼び出しが可能で、"
+"その呼び出しに対しデフォルトのレスポンスを返すことを意味しています。"
 "逆にEasyMock、JMockといったモックフレームはデフォルトでstrictで、"
 "予期しないメソッドの呼び出しに対して例外をスローします。"
-"このような厳密性を強制することで、over-specification(詳細すぎる仕様)"
-"な状態となり、内部のコード変更に対してテストがbrittle(壊れやすい)"
-"になり、すぐにテストの失敗を引き起こします。"
-"Spockのモックフレームワークはover-specificationのトラップを回避して、"
-"関心のあるインタラクションだけを簡単に記述することができます。"
+"このような厳密性の強制は、内部のコード変更に対してテストが壊れやすくなり、"
+"すぐにテストが失敗する、over-specification(詳細すぎる仕様)を引き起こします。"
+"Spockはモックフレームワークによくあるover-specificationを避け、"
+"関心のある相互作用だけを簡単に記述することができます。"

 # cf77246bfb6441debd3f255bf615b39f
 #: ../../interaction_based_testing.rst:86
@@ -221,20 +220,20 @@ msgid ""
 "type it represents. This default behavior is overridable by stubbing the "
 "methods, which we will learn about in the `Stubbing`_ section."
 msgstr ""
-"初期化状態のモックは何の振る舞いもしません。このオブジェクトに対して"
-"メソッドの呼び出しをすることはできますが、メソッドの戻り値の方に応じた"
+"初期状態のモックは何の振る舞いもしません。このオブジェクトに対して"
+"メソッドの呼び出しをすることはできますが、メソッドの戻り値の型に応じた"
 "デフォルト値を返すだけです(\\ ``false``\\ 、\\ ``0``\\、または\\ ``null``\\ )。"
 "ただし\\ ``Object.equals``\\ 、\\ ``Object.hashCode``\\ 、\\ ``Object.toString``\\ メソッド"
 "は例外です。モックオブジェクトはオブジェクト毎に一意のハッシュコードを持ち"
 "自身との比較にのみ等しくなります。そして文字列表現では、そのモックが表す"
 "型が含まれるようになっています。"
-"このデフォルトの動作はスタブ化のメソッドによりオーバーライド可能です。"
-"詳細は\\ `Stubbing`_\\ セクションで学びます。"
+"このデフォルトの動作はスタブすることによりオーバーライド可能です。"
+"詳細は\\ :ref:`スタブする <Stubbing>`\\ で説明します。"

 # da8994c41e7a43b8a2553a67729422f5
 #: ../../interaction_based_testing.rst:93
 msgid "Injecting Mock Objects into Code Under Specification"
-msgstr "スペック内でモックオブジェクトを注入する"
+msgstr "モックオブジェクトを設定する"

 # bfa13eeb62654adeae594fead2271469
 #: ../../interaction_based_testing.rst:95
@@ -242,8 +241,8 @@ msgid ""
 "After creating the publisher and its subscribers, we need to make the latter "
 "known to the former::"
 msgstr ""
-"publisherとsubscriberのモックを作成した後に、publisherに作成したsubscriber"
-"を知らせる必要があります。"
+"publisherとモックのsubscriberを作成した後に、publisherに作成したsubscriber"
+"を設定する必要があります。"

 # 30335c8a92ea4482832a90b74282c2d2
 #: ../../interaction_based_testing.rst:108
@@ -251,13 +250,13 @@ msgid ""
 "We are now ready to describe the expected interactions between the two "
 "parties."
 msgstr ""
-"これで2つのオブジェクト間で行われるインタラクションについて記述する"
+"これで２つのオブジェクト間で行われる相互作用について記述する"
 "準備が整いました。"

 # 6e9b615a816a46e6a3aff1e3c4129e74
 #: ../../interaction_based_testing.rst:111
 msgid "Mocking"
-msgstr "モック化する"
+msgstr "モックする"

 # be2452128cb34aca894ac477050b5496
 #: ../../interaction_based_testing.rst:113
@@ -265,8 +264,8 @@ msgid ""
 "Mocking is the act of describing (mandatory) interactions between the object "
 "under specification and its collaborators. Here is an example::"
 msgstr ""
-"モック化するとは仕様に従い、オブジェクトとそのコラボレータ間(で必須)の"
-"インタラクションを記述するということです。"
+"モックするとは、仕様に従いオブジェクトとそのコラボレータ間(で必須)の"
+"相互作用を宣言するということです。"
 "次の例を見てください。"

 # b8109a44526043bfb0a9c3b825217ca3
@@ -275,7 +274,7 @@ msgid ""
 "Read out aloud: \"When the publisher sends a 'hello' message, then both "
 "subscribers should receive that message exactly once.\""
 msgstr ""
-"言葉にしてみると「publisher が 'hello' のメッセージを send したとき、"
+"文章としてコードを読んでみると「publisher が 'hello' のメッセージを send したとき、"
 " それぞれの subscriber は 1回 message を receive すべき」になります。"

 # 91ae211516c54c659901daca01dd8b90
@@ -289,16 +288,16 @@ msgid ""
 "additional code."
 msgstr ""
 "フィーチャーメソッドが実行されると、\\ ``when:``\\ ブロック内において"
-"\\ ``then:``\\ ブロックで指定したインタラクションにマッチする"
+"\\ ``then:``\\ ブロックで指定した相互作用にマッチする"
 "モックオブジェクトへの呼び出しが全て記録されます。"
-"もし期待したインタラクションが満たされない場合は\\ ``InteractionNotSatisfiedError``\\ "
+"もし期待した相互作用が満たされない場合は\\ ``InteractionNotSatisfiedError``\\ "
 "(のサブクラス)がスローされます。"
-"この検証は自動的に行われ、これ以上にコードを記述する必要はありません。"
+"この検証は自動的に行われ、これ以上に開発者自身でコードを記述する必要はありません。"

 # be33d88d5f3141f497456c847fc5da94
 #: ../../interaction_based_testing.rst:133
 msgid "Interactions"
-msgstr "インタラクション"
+msgstr "相互作用"

 # 27703cd55f37403d907950416aa5d7e1
 #: ../../interaction_based_testing.rst:137
@@ -310,12 +309,13 @@ msgid ""
 "against. Depending on the circumstances, the interaction may match zero, "
 "one, or multiple invocations."
 msgstr ""
-"いいえ。インタラクションは通常のメソッド呼び出しのように見えますが、"
-"これは期待するメソッドの実行を簡単に表現する方法でしかありません。"
-"インタラクションをモックオブジェクトへの全ての呼び出しに対する正規表現と"
-"考えるのは良い方法です。"
-"指定の方法によってはインタラクションが0回、1回、または複数回マッチする"
-"かも知れません。"
+"(質問：相互作用は通常のメソッド呼び出しか？)"
+"いいえ。相互作用は通常のメソッド呼び出しのように見えますが、"
+"これは期待するメソッドの実行回数を簡単に表現しているだけです。"
+"相互作用をモックオブジェクトの全ての呼び出しに対する正規表現と"
+"考えるのと良いかもしれません。"
+"指定の方法によっては相互作用が０回、１回、または複数回マッチする"
+"といった表現ができます。"

 # d496b838aad345629eea4eb09cf0a80c
 #: ../../interaction_based_testing.rst:142
@@ -325,15 +325,15 @@ msgid ""
 "*target constraint*, a *method constraint*, and an *argument constraint*::"
 msgstr ""
 "``then:``\\ ブロックの内容を詳細に見ていきましょう。"
-"これには2つの\\ *インタラクション*\\ が記述されており、それぞれ"
-"\\ *cardinality(濃度)*\\ 、\\ *target constraint*\\ 、"
-"\\ *method constraint*\\ 、そして\\ *argument constraint*\\ "
-"の4つの個別パートから成り立っています。"
+"これには２つの\\ *相互作用*\\ が宣言されており、それぞれ"
+"\\ *実行回数(cardinality)*\\ 、\\ *対象制約(target constraint)*\\ 、"
+"\\ *メソッド制約(method constraint)*\\ 、そして\\ *引数制約(argument constraint)*\\ "
+"の４つの個別パートから成り立っています。"

 # e81001af510f4785ab5bfaeb5f3f5358
 #: ../../interaction_based_testing.rst:153
 msgid "Cardinality"
-msgstr "Cardinality"
+msgstr "実行回数"

 # 97b577ab60bf4adca010687ef58d4f33
 #: ../../interaction_based_testing.rst:155
@@ -341,14 +341,13 @@ msgid ""
 "The cardinality of an interaction describes how often a method call is "
 "expected. It can either be a fixed number or a range::"
 msgstr ""
-"インタラクションでのcardinalityは、メソッドの呼び出しがどの程度あることを"
-"期待しているか表しています。"
+"実行回数は、メソッドが何度呼ばされることを期待しているか表しています。"
 "これは固定の数値、または範囲で指定できます。"

 # f9b110fd388d4db0b4b7cbf2fc64ef28
 #: ../../interaction_based_testing.rst:166
 msgid "Target Constraint"
-msgstr "Target Constraint"
+msgstr "対象制約"

 # 152deec0237540a1a2d07454f65c6759
 #: ../../interaction_based_testing.rst:168
@@ -356,13 +355,12 @@ msgid ""
 "The target constraint of an interaction describes which mock object is "
 "expected to receive the method call::"
 msgstr ""
-"インタラクションでのtarget constraintは呼び出しを期待するモックオブジェクト"
-"を表しています。"
+"対象制約は呼び出しを期待するモックオブジェクトを表しています。"

 # e2e656ab80a34aa89e52d0b0c617ccee
 #: ../../interaction_based_testing.rst:174
 msgid "Method Constraint"
-msgstr ""
+msgstr "メソッド制約"

 # 7827e705dae54027906eb1d0626a4f6e
 #: ../../interaction_based_testing.rst:176
@@ -370,8 +368,7 @@ msgid ""
 "The method constraint of an interaction describes which method is expected "
 "to be called::"
 msgstr ""
-"インタラクションでのmethod constraintは呼び出しを期待するメソッド"
-"を表しています。"
+"メソッド制約は呼び出しを期待するメソッドを表しています。"

 # 2b94d1219446478c88bd63a30abe2a82
 #: ../../interaction_based_testing.rst:182
@@ -380,19 +377,19 @@ msgid ""
 "used instead of method syntax::"
 msgstr ""
 "ゲッターメソッドの呼び出しを期待する場合は、Groovyのプロパティ構文が"
-"メソッドのシンタックスの代わりに使用できます。"
+"メソッドの構文の代わりに使用できます。"

 # e00d2250ebc347c2ae5216213044e292
 #: ../../interaction_based_testing.rst:186
 msgid ""
 "When expecting a call to a setter method, only method syntax can be used::"
 msgstr ""
-"逆にセッターメソッドの呼び出しを期待する場合は、メソッドのシンタックスのみが使用できます。"
+"逆にセッターメソッドの呼び出しを期待する場合は、メソッドの構文のみが使用できます。"

 # 922b9cdcc93842ebb533f0e576994bab
 #: ../../interaction_based_testing.rst:191
 msgid "Argument Constraints"
-msgstr ""
+msgstr "引数制約"

 # ac224ec010b843f7a379bc445be3697e
 #: ../../interaction_based_testing.rst:193
@@ -400,15 +397,14 @@ msgid ""
 "The argument constraints of an interaction describe which method arguments "
 "are expected::"
 msgstr ""
-"インタラクションでのargument constraintsは呼び出しを期待するメソッドの引数"
-"を表しています。"
+"引数制約は呼び出しを期待するメソッドの引数を表しています。"

 # a185b9bd01604d5caa517f00c4e2b4ca
 #: ../../interaction_based_testing.rst:205
 msgid ""
 "Argument constraints work as expected for methods with multiple arguments::"
 msgstr ""
-"Argument constraintsは複数の引数を持つメソッドに対しても期待通り動作します。"
+"引数制約は複数の引数を持つメソッドに対しても問題なく動作します。"

 # 607bcfd285c0441ebef7bc92e267ae89
 #: ../../interaction_based_testing.rst:209
@@ -416,8 +412,7 @@ msgid ""
 "When dealing with vararg methods, vararg syntax can also be used in the "
 "corresponding interactions::"
 msgstr ""
-"可変長引数のメソッドを扱う場合も、インタラクションの記述方法に"
-"合わせて記述することができます。"
+"可変長引数のメソッドを扱う場合も、同じように相互作用を宣言できます。"

 # acc5f693a51b4b3ca00bf183a8707c08
 #: ../../interaction_based_testing.rst:221
@@ -427,8 +422,7 @@ msgid ""
 "interactions matching such methods."
 msgstr ""
 "Groovyのメソッドは最後のパラメータを配列とすると可変長引数が使用できます。"
-"したがって、可変長引数のシンタックスと同様にこのようなメソッドに対しても"
-"インタラクションのマッチングが行えます。"
+"可変長引数の構文と同様に、このようなメソッドに対しても相互作用のマッチングが行えます。"

 # 14cd2169aba94449b8480464e4f10e0f
 #: ../../interaction_based_testing.rst:225
@@ -448,13 +442,13 @@ msgid ""
 "Although ``(_.._) * _._(*_) >> _`` is a valid interaction declaration, it is "
 "neither good style nor particularly useful."
 msgstr ""
-"\\ ``(_.._) * _._(*_) >> _``\\ は有効なインタラクションの宣言ですが、"
+"\\ ``(_.._) * _._(*_) >> _``\\ は有効な相互作用の定義ですが、"
 "これは良いスタイルでもなければ、便利な場面があるわけでもありません。"

 # 59e83546c22047bc8f90c18f87fcfa20
 #: ../../interaction_based_testing.rst:239
 msgid "Strict Mocking"
-msgstr "Strictなモック化"
+msgstr "Strictなモック"

 # 192f5fb0081d4765a3b4b32e12b68201
 #: ../../interaction_based_testing.rst:241
@@ -463,9 +457,9 @@ msgid ""
 "*strict mocking*, a style of mocking where no interactions other than those "
 "explicitly declared are allowed::"
 msgstr ""
-"さて、この全メソッドの呼び出しへのマッチングはどのような時に役立つでしょうか？"
-"よい例が\\ *strict mocking*\\ です。"
-"このモックのスタイルは明示的に宣言されたインタラクション以外を許可しません。"
+"先ほどの、すべてのメソッド呼び出しに対するマッチングはどのような時に役立つでしょうか？"
+"よい例が\\ *strictなモック*\\ です。"
+"このモックのスタイルは明示的に宣言した相互作用以外を許可しません。"

 # 90528da444804393a3710cc342f89b3c
 #: ../../interaction_based_testing.rst:252
@@ -474,10 +468,10 @@ msgid ""
 "method. Note the use of ``_ *`` (any number of calls), which allows any "
 "interaction with the auditing component."
 msgstr ""
-"``0 *``\\ は\\ ``then:``\\ ブロックまたはメソッドの最後のインタラクション"
+"``0 *``\\ は\\ ``then:``\\ ブロックまたはメソッドの最後の相互作用"
 "として入れることで意味をなします。"
 "\\ ``_ *``\\  (任意の呼び出し回数)は、auditingコンポーネントに対して"
-"任意の呼び出しを許可しています。"
+"任意の呼び出し回数を許可しています。"

 # 2c90f36ada0643ffb41c8df0d7d21e5c
 #: ../../interaction_based_testing.rst:255
@@ -487,15 +481,15 @@ msgid ""
 "example, ``_ * auditing.record(_) >> \"ok\"`` can (and should!) be "
 "simplified to ``auditing.record(_) >> \"ok\"``."
 msgstr ""
-"``_ *``\\ はstrictなモック化を行う場合にのみ有効です。"
-"特に\\ :ref:`stubbing <Stubbing>`\\ を使用する場合は必要になることはありません。"
+"``_ *``\\ はstrictなモックを行う場合にのみ有効です。"
+"特に\\ :ref:`スタブする <Stubbing>`\\ 場合は必要になることはありません。"
 "例えば\\ ``_ * auditing.record(_) >> \"ok\"``\\ は単に\\ ``auditing.record(_) >> \"ok\"``\\ "
-"と記述することができます(すべき！)。"
+"と宣言することができます(すべき！)。"

 # d4d4f1d3c3374d30b7f64f75219c2dd3
 #: ../../interaction_based_testing.rst:262
 msgid "Where to Declare Interactions"
-msgstr "インタラクションの宣言場所"
+msgstr "相互作用の宣言場所"

 # c8a950dba7aa4d1895fb8316438b25e7
 #: ../../interaction_based_testing.rst:264
@@ -507,12 +501,12 @@ msgid ""
 "a ``setup`` method. Interactions can also be declared in any \"helper\" "
 "instance method of the same specification class."
 msgstr ""
-"ここまで見てきた例ではインタラクションは\\ ``then:``\\ に宣言してきました。 "
-"これは大抵の場合に自然にスペックが読めます。"
-"しかし、実際には\\ ``when:``\\ ブロックの\\ *前*\\ でインタラクションを"
+"ここまで見てきた例では相互作用は\\ ``then:``\\ に宣言してきました。 "
+"これは自然にスペックが読めるという効果があります。"
+"しかし、実際には\\ ``when:``\\ ブロックの\\ *前*\\ で相互作用を"
 "宣言することもできます。これは\\ ``setup``\\ メソッド内でも宣言できることを"
-"意味しています。同じようにスペッククラス内のヘルパーインスタンス内で"
-"インタラクションを宣言するといったことも可能です。"
+"意味しています。同じようにスペッククラス内で別のヘルパークラスで"
+"相互作用を宣言するといったことも可能です。"

 # b3d04638403d4663a9491afa4f22893f
 #: ../../interaction_based_testing.rst:269
@@ -525,13 +519,13 @@ msgid ""
 "other interactions. This allows to override interactions declared in, say, a "
 "``setup`` method with interactions declared in a ``then:`` block."
 msgstr ""
-"モックオブジェクへの呼び出しが発生すると、インタラクションは宣言された"
-"順番に評価されます。もし、実行が複数のインタラクションにマッチする場合は"
-"マッチの上限に達してない限り、先に宣言したインタラクションが優先して"
-"評価されます。ただし例外があり\\ ``then:``\\ ブロックで宣言したインタラクションは"
-"他のインタラクションよりも先に評価されます。これは\\ ``setup``\\ など"
-"他のブロックで宣言したインタラクションを\\ ``then:``\\ ブロックで"
-"オーバーライド出来る事を意味しています。"
+"モックオブジェクトへの呼び出しが発生すると、相互作用は宣言された"
+"順番に評価されます。もし、呼び出しが複数の相互作用にマッチする場合は"
+"マッチの上限に達してない限り、先に宣言した相互作用が優先して"
+"評価されます。ただし例外があり\\ ``then:``\\ ブロックで宣言した相互作用は"
+"他の相互作用よりも先に評価されます。これは\\ ``setup``\\ など"
+"他のブロックで宣言した相互作用よりも\\ ``then:``\\ ブロックで"
+"宣言した相互作用が先にマッチングされるということを意味しています。"

 # 9840aea6a6ce4022a010da2193e74d2d
 #: ../../interaction_based_testing.rst:277
@@ -547,20 +541,20 @@ msgid ""
 "stubbing). Either of them must always be present; ``foo.bar()`` alone will "
 "never be considered an interaction."
 msgstr ""
-"言い換えると、どのように通常のメソッドではなくインタラクションの宣言だと"
-"認識しているのでしょうか？Spockはインタラクションの宣言を認識するために"
-"簡単な規則を持っています。これは式があり、乗算(``*``)、または"
-"左シフトが(``>>``, ``>>>``)のどちらかがある場合に、それをインタラクション"
-"の宣言として認識します。このような式は、本来もっている値の意味を変えることで"
-"正常に動作します。cardinalityの定義(モック化時)と、レスポンス生成(スタブ化時)"
-"のシンタックスを間違えないようにしてください。これらは必ずどちらかが"
-"指定されなければなりません。単独で\\ ``foo.bar()``\\  がインタラクション"
-"として見なされることはありません。"
+"どのように通常のメソッドではなく相互作用の宣言だとSpockは"
+"認識しているのでしょうか？Spockでは相互作用の宣言を認識するために"
+"簡単なルールを持っています。これは、式があった場合に、乗算(``*``)、または"
+"左シフト(``>>``, ``>>>``)のどちらか含まれていると、それを相互作用"
+"の宣言として認識します。このような式は、本来もっている式の意味を変えることで"
+"動作してます。実行回数の宣言(モックする時)と、レスポンス生成(スタブする時)"
+"の構文を間違えないようにしてください。これらは必ずどちらかが"
+"指定されなければなりません。\\ ``foo.bar()``\\ といった単独の式が相互作用"
+"として認識されることはありません。"

 # 08b0975f40aa457688984f769623f0c5
 #: ../../interaction_based_testing.rst:288
 msgid "Declaring Interactions at Mock Creation Time (New in 0.7)"
-msgstr "モック作成時のインタラクション宣言 (New in 0.7)"
+msgstr "モック作成時の相互作用宣言 (New in 0.7)"

 # ec27a82373794705b5ffc83d308d0b29
 #: ../../interaction_based_testing.rst:290
@@ -568,8 +562,8 @@ msgid ""
 "If a mock has a set of \"base\" interactions that don't vary, they can be "
 "declared right at mock creation time::"
 msgstr ""
-"もしモックが動的に変化しない\\ \"ベース\"\\ となるインタラクションを持っている"
-"場合は、モック作成時にインタラクションを宣言できます。"
+"もしモックが動的に変化しない\\ \"ベース\"\\ となる相互作用を持っている"
+"場合は、モック作成時に相互作用を宣言できます。"

 # 5afcecf8d1cf499595f8ca06bad1e56b
 #: ../../interaction_based_testing.rst:297
@@ -579,11 +573,10 @@ msgid ""
 "[#targetContext]_) have a target constraint; it's clear from the context "
 "which mock object they belong to."
 msgstr ""
-"この機能は\\ :ref:`スタブ化 <Stubbing>`\\ によって専用の\\ `Stubs`_\\ を作る際に"
-"魅力的な機能です。"
-"インタラクションはtarget constraintが含まれていないことに(持てない"
-"\\ [#targetContext]_\\ )ことに注意してください。"
-"これは作成しようとしているモックのコンテキストで動作することが明白だからです。"
+"この機能は\\ :ref:`スタブする <Stubbing>`\\ ことにより専用の\\ :ref:`スタブ <Stubs>`\\ を作る際に"
+"便利な機能です。"
+"相互作用は対象制約が含まれていない(持てない\\ [#targetContext]_\\ )ことに注意してください。"
+"これは作成するモックのコンテキストで動作することが明らかだからです。"

 # 596cb22985674a0586ad32d60a3d92ac
 #: ../../interaction_based_testing.rst:301
@@ -591,12 +584,12 @@ msgid ""
 "Interactions can also be declared when initializing an instance field with a "
 "mock::"
 msgstr ""
-"インタラクションはインスタンスフィールドをモックで初期化する場合にも宣言できます。"
+"また相互作用はフィールドをモックで初期化する場合にも使用できます。"

 # 5bd33a5bc850471c9ecff02914849e40
 #: ../../interaction_based_testing.rst:313
 msgid "Grouping Interactions with Same Target (New in 0.7)"
-msgstr "インタラクションのグループ化 (New in 0.7)"
+msgstr "相互作用のグループ化 (New in 0.7)"

 # b5f406a14c4e430bbaa32092a34dbd8f
 #: ../../interaction_based_testing.rst:315
@@ -606,11 +599,11 @@ msgid ""
 "<DeclaringInteractionsAtMockCreationTime>`, this makes it unnecessary to "
 "repeat the target constraint::"
 msgstr ""
-"``Specification.with``\\ ブロックでターゲットを共有することで"
-"インタラクションのグループ化が行えます。"
-"これは\\ :ref:`モック作成時のインタラクション宣言\\ "
+"``Specification.with``\\ ブロックで対象を共有することで"
+"相互作用のグループ化が行えます。"
+"これは\\ :ref:`モック作成時の相互作用宣言\\ "
 "<DeclaringInteractionsAtMockCreationTime>`\\ と同じように、"
-"target constraintを繰り返す必要がなくなります。"
+"対象制約を繰り返す必要がなくなります。"

 # 0873c63f191e41e096ef18a7f3f03689
 #: ../../interaction_based_testing.rst:324
@@ -618,13 +611,12 @@ msgid ""
 "A ``with`` block can also be used for grouping conditions with the same "
 "target."
 msgstr ""
-"``with``\\ ブロックは特定のターゲットに対するコンディションのグループ化にも"
-"使用できます。"
+"``with``\\ ブロックは特定の対象に対する条件のグループ化にも使用できます。"

 # ad0064f04dc64f1dbbf1f99139e98180
 #: ../../interaction_based_testing.rst:327
 msgid "Mixing Interactions and Conditions"
-msgstr "インタラクションとコンディションの組み合わせ"
+msgstr "相互作用と条件の組み合わせ"

 # 9772b3b772fd4c669ae8fb8e7aca8d7a
 #: ../../interaction_based_testing.rst:329
@@ -633,9 +625,8 @@ msgid ""
 "strictly required, it is customary to declare interactions before "
 "conditions::"
 msgstr ""
-"``then:``\\ ブロックにはインタラクションとコンディションの両方を同時に含むことが"
-"できます。厳密には必須ではありませんが、コンディションの前に"
-"インタラクションを宣言するのが一般的です。"
+"``then:``\\ ブロックには相互作用と条件の両方を同時に含むことが"
+"できます。厳密には必須ではありませんが、条件の前に相互作用を宣言するのが一般的です。"

 # 11245c092de149da8e987b67a8f3462d
 #: ../../interaction_based_testing.rst:339
@@ -644,14 +635,14 @@ msgid ""
 "subscriber should receive the message exactly once, and the publisher's "
 "message count should be one.\""
 msgstr ""
-"言葉にしてみると「publisher が 'hello' のメッセージを send したとき、"
-" subscriber は 1回 message を receive して、publisher の message count"
-" は 1 であるべき」になります。"
+"文章としてコードを読んでみると「publisher が 'hello' のメッセージを send したとき、"
+" subscriber は １回 message を receive して、publisher の message count"
+" は １ であるべき」になります。"

 # c349252f6bf84850a9ca2c8056d0ce3c
 #: ../../interaction_based_testing.rst:343
 msgid "Explicit Interaction Blocks"
-msgstr "明示的なインタラクションブロック"
+msgstr "明示的な相互作用ブロック"

 # 392e3daa569448cc8831adf3519e873f
 #: ../../interaction_based_testing.rst:345
@@ -663,11 +654,11 @@ msgid ""
 "preceding ``when:`` block. In most cases this works out just fine, but "
 "sometimes it can lead to problems::"
 msgstr ""
-"内部的にSpockでは実行\\ *前*\\ に全ての期待するインタラクションを保持しておく"
-"必要がります。そではどのように\\ ``then:``\\ ブロックでインタラクションが"
-"宣言可能になっているのでしょうか？答えは内部の実装で、\\ ``then:``\\ ブロック"
-"で宣言したインタラクションを\\ ``when:``\\ ブロックを処理する直前に移動します。"
-"これは大抵の場合に問題なく動作しますが、特定の条件で問題が起きます。"
+"仕組み上、Spockは実行\\ *前*\\ に全ての相互作用を保持しておく必要があります。"
+"それではなぜ\\ ``then:``\\ ブロックで相互作用が"
+"宣言可能なのでしょうか？内部的には、\\ ``then:``\\ ブロック"
+"で宣言した相互作用は\\ ``when:``\\ ブロックの直前に移動されます。"
+"これは大抵の場合に問題なく動作しますが、特定の条件下では問題を引き起こす場合があります。"

 # 806f4afad39f458fa89965f0599c9a68
 #: ../../interaction_based_testing.rst:357
@@ -678,10 +669,10 @@ msgid ""
 "the variable declaration. Hence it will just move the interaction, which "
 "will cause a ``MissingPropertyException`` at runtime."
 msgstr ""
-"この例では期待する引数を変数に受けています(cardinalityを変数に受ける場合も"
-"場合も同様)。しかしながらSpockはインタラクションからこの後で宣言される変数"
+"この例では期待する引数を変数に受けています(実行回数を変数に受ける場合も"
+"場合も同様)。しかしながらSpockは相互作用からこの後で宣言される変数"
 "を参照できるほど賢くはありません(だってそうでしょう？)。"
-"そのために単純にインタラクションを移動しただけでは、実行時に"
+"そのために単純に相互作用を移動しただけでは、実行時に"
 "\\ ``MissingPropertyException``\\ を引き起こします。"

 # fea4deb35c7041619cee28bfaa6cf8e5
@@ -704,7 +695,7 @@ msgid ""
 "Another solution is to be explicit about the fact that variable declaration "
 "and interaction belong together::"
 msgstr ""
-"もう一つの解決方法は変数をインタラクションと共に使用するということを"
+"もう一つの解決方法は変数を相互作用と共に使用するということを"
 "明示することです。"

 # d3edff9f195846f5b891ab3172bd633f
@@ -719,7 +710,7 @@ msgstr ""
 # 25be090c816b481c9bd635321510790b
 #: ../../interaction_based_testing.rst:380
 msgid "Scope of Interactions"
-msgstr "インタラクションのスコープ"
+msgstr "相互作用のスコープ"

 # 461a388537e44c2b906272225e4a3332
 #: ../../interaction_based_testing.rst:382
@@ -727,7 +718,7 @@ msgid ""
 "Interactions declared in a ``then:`` block are scoped to the preceding "
 "``when:`` block::"
 msgstr ""
-"``then:``\\ ブロックで宣言したインタラクションは、直前の\\ ``when:``\\ "
+"``then:``\\ ブロックで宣言した相互作用は、直前の\\ ``when:``\\ "
 "に対してスコープを持ちます。"

 # f40bfad2d9b641a381907a35e3292ade
@@ -747,7 +738,7 @@ msgid ""
 "Interactions declared outside a ``then:`` block are active from their "
 "declaration until the end of the containing feature method."
 msgstr ""
-"``then:``\\ ブロックの外で宣言したインタラクションは、そのフィーチャーメソッド"
+"``then:``\\ ブロックの外で宣言した相互作用は、そのフィーチャーメソッド"
 "が完了するまで有効になります。"

 # bb4888b632b14848946afcddbbf88b82
@@ -758,8 +749,8 @@ msgid ""
 "``cleanupSpec`` method. Likewise, mock objects should not be stored in "
 "static or ``@Shared`` fields."
 msgstr ""
-"インタラクションは常に特定のフィーチャーメソッドに対してスコープを"
-"持ちます。そのため、インタラクションをstaticメソッド、\\ ``setupSpec``\\  メソッド、"
+"相互作用は常に特定のフィーチャーメソッドに対してスコープを"
+"持ちます。そのため、相互作用をstaticメソッド、\\ ``setupSpec``\\  メソッド、"
 "また\\ ``cleanupSpec``\\ メソッドで宣言することはできません。"
 "同様にモックオブジェクトはstatic、または\\ ``@Shared``\\ フィールドにすべきでは"
 "ありません。"
@@ -767,7 +758,7 @@ msgstr ""
 # 08444aea9ae145ffbc249d12094622be
 #: ../../interaction_based_testing.rst:407
 msgid "Verification of Interactions"
-msgstr "インタラクションの検証"
+msgstr "相互作用の検証"

 # c0bc449e82484a33b9f2110f6b1b4e33
 #: ../../interaction_based_testing.rst:409
@@ -777,8 +768,8 @@ msgid ""
 "than required. The former case is detected right when the invocation "
 "happens, and causes a ``TooManyInvocationsError``::"
 msgstr ""
-"モックベースのテストが失敗する理由は主に2つです。期待したインタラクション"
-"以上に呼び出しがマッチするか、もしくは期待したインタラクションの"
+"モックベースのテストが失敗する理由は主に2つです。期待した相互作用"
+"以上に呼び出しがマッチするか、もしくは期待した相互作用の"
 "呼び出しに満たいない場合です。"
 "前者の場合は、実際に発生した呼び出し回数を表示し\\ ``TooManyInvocationsError``\\ "
 "が発生します。"
@@ -790,8 +781,8 @@ msgid ""
 "show all invocations matching the interaction in question (new in Spock "
 "0.7)::"
 msgstr ""
-"多くのインタラクションがマッチする場合に簡単に解析が行えるように、"
-"呼び出しに関連する全てのインタラクションを表示します(new in Spock "
+"多くの相互作用がマッチする場合に簡単に解析が行えるように、"
+"呼び出しに関連する全ての相互作用を表示します(new in Spock "
 "0.7)。"

 # 7c9ee5fb12564f83bd5fc73a83cbee46
@@ -843,9 +834,9 @@ msgid ""
 "interaction's arguments will be shown first::"
 msgstr ""
 "なぜ必要とした呼び出しが行われなかったのかを簡単に解析できるように、"
-"必要としたインタラクションに類似している順に、インタラクションと一致しなかった"
+"必要とした相互作用に類似している順に、相互作用と一致しなかった"
 "全ての呼び出しを出力します(new in Spock 0.7)。"
-"具体的にはインタラクションの引数に一致する呼び出しが最初に表示されます。"
+"具体的には相互作用の引数に一致する呼び出しが最初に表示されます。"

 # 45d741277a17466ba6334bd9d7117582
 #: ../../interaction_based_testing.rst:454
@@ -861,7 +852,7 @@ msgid ""
 msgstr ""
 "大抵の場合、メソッドの呼び出し順序は重要ではなく、また実行順序は時間と共に変更される"
 "可能性があるものでもあります。over-specificationを避けるために、Spockではデフォルトで"
-"最終的に指定したインタラクションを満たしていれば、"
+"最終的に指定した相互作用を満たしていれば、"
 "どのような実行順序でも許容します。"

 # f2530818dd4d47ceab5ddefbd574f563
@@ -873,7 +864,7 @@ msgid ""
 msgstr ""
 "ここで呼び出し順序は ``\"hello\"`` ``\"hello\"`` ``\"goodbye"
 "\"``、``\"hello\"`` ``\"goodbye\"`` ``\"hello\"``、または ``\"goodbye\"`` ``"
-"\"hello\"`` ``\"hello\"`` のいずれの場合も指定したインタラクションを満たしています。"
+"\"hello\"`` ``\"hello\"`` のいずれの場合も指定した相互作用を満たしています。"

 # 2374f3bb6a0743f4a17590dae87df65b
 #: ../../interaction_based_testing.rst:466
@@ -881,7 +872,7 @@ msgid ""
 "In those cases where invocation order matters, you can impose an order by "
 "splitting up interactions into multiple ``then:`` blocks::"
 msgstr ""
-"実行順序が重要な意味をもつ場合は、インタラクションを複数の\\ ``then:``\\ "
+"実行順序が重要な意味をもつ場合は、相互作用を複数の\\ ``then:``\\ "
 "ブロックに分割することで順序の確認が行えます。"

 # 0847a86faa6a477ba933c58efc5fef87
@@ -894,7 +885,7 @@ msgstr ""
 "これは\\ ``\"goodby\"``\\ を受信するまえに、\\ ``\"hello\"``\\ を2回"
 "受信することを検証します。このように\\ ``then:``\\ ブロック\\ **内**\\ では"
 "順序の検証しませんが、\\ ``then:``\\ ブロックを複数に分割することで、"
-"ブロック毎にインタラクションを満たしているかの検証を行うため、"
+"ブロック毎に相互作用を満たしているかの検証を行うため、"
 "ブロック\\ **間**\\ での順序の検証が行えます。"

 # 147969b5b4aa478f87f661478a3d9b1b
@@ -911,7 +902,7 @@ msgstr ""
 # 2dc1ec483ab14dbbbdff3be437004502
 #: ../../interaction_based_testing.rst:482
 msgid "Mocking Classes"
-msgstr "クラスのモック化"
+msgstr "クラスのモック"

 # ba3de6a30bd746ca9d9f79964c0dd9f9
 #: ../../interaction_based_testing.rst:484
@@ -922,16 +913,16 @@ msgid ""
 "class path. If either of these libraries is missing from the class path, "
 "Spock will gently let you know."
 msgstr ""
-"Spockではインタフェースの他にクラスのモック化もサポートしています。"
-"クラスのモック化はインターフェースと同じように機能します。ただし"
-"クラスのモック化を行う場合は\\ ``cglib-nodep-2.2``\\ 以上、\\ ``objenesis-1.2``\\ 以上が"
+"Spockではインタフェースの他にクラスのモックもサポートしています。"
+"クラスをモックするは場合もインターフェースと同じように機能します。ただし"
+"クラスをモックする場合は\\ ``cglib-nodep-2.2``\\ 以上、\\ ``objenesis-1.2``\\ 以上が"
 "クラスパスに含まれている必要があります。もしこれらのライブラリが"
 "クラスパスに含まれていない場合はSpockが警告を出力します。"

 # d07bd4f127f24d909709390ed6b4c0cd
 #: ../../interaction_based_testing.rst:492
 msgid "Stubbing"
-msgstr "スタブ化"
+msgstr "スタブする"

 # 4426e06b49ee4254a4b989b07f715bc2
 #: ../../interaction_based_testing.rst:494
@@ -941,8 +932,8 @@ msgid ""
 "the method is going to be called; you just want it to return some value, or "
 "perform some side effect, *whenever* it gets called."
 msgstr ""
-"スタブ化とは特定のメソッド呼び出しに対して応答を振る舞うことです。"
-"メソッドをスタブ化する場合は、そのメソッドが何度呼ばれるかを気にせずに"
+"スタブするとは特定のメソッド呼び出しに対して応答を振る舞うことです。"
+"メソッドをスタブする場合は、そのメソッドが何度呼ばれるかを気にせずに"
 "\\ *いつ呼び出されても*\\ 特定の値を返したり、何かの副作用が働くように"
 "します。"

@@ -980,7 +971,7 @@ msgid ""
 "Compared to a mocked interaction, a stubbed interaction has no cardinality "
 "on the left end, but adds a *response generator* on the right end::"
 msgstr ""
-"モック時のインタラクションと比べると、スタブのインタラクションは左に"
+"モック時の相互作用と比べると、スタブの相互作用は左に"
 "cardinalityがない代わりに、右に\\ *応答の仕方*\\ が加えられています。"

 # c28b3a6a6934485f93b4dcae3f4e7128
@@ -992,12 +983,12 @@ msgid ""
 "for stubbing, it's common to declare interactions :ref:`at mock creation "
 "time <DeclaringInteractionsAtMockCreationTime>` or in a ``setup:`` block."
 msgstr ""
-"スタブのインタラクションは、\\ ``then:``\\ ブロック内や\\ ``when:``\\ ブロック"
+"スタブの相互作用は、\\ ``then:``\\ ブロック内や\\ ``when:``\\ ブロック"
 "の前など、どのような場所でも宣言することができます"
 "\\ (詳細は\\ :ref:`WhereToDeclareInteractions`\\ を参照)。"
 "もしモックオブジェクトをスタブとしてのみ使用する場合は"
 "\\ :ref:`モックの作成時 <DeclaringInteractionsAtMockCreationTime>`\\ "
-"や\\ ``setup:``\\ ブロック内でインタラクションを宣言するのが一般的です。"
+"や\\ ``setup:``\\ ブロック内で相互作用を宣言するのが一般的です。"

 # 8d45e48c3219471bb25d3e9b0c0c4397
 #: ../../interaction_based_testing.rst:527
@@ -1018,7 +1009,7 @@ msgid ""
 "To return different values for different invocations, use multiple "
 "interactions::"
 msgstr ""
-"異なる実行に対して別の値を返すには、それぞれ複数のインタラクションを"
+"異なる実行に対して別の値を返すには、それぞれ複数の相互作用を"
 "宣言します。"

 # d4f8bf87df614b639406ac0e8625e202
@@ -1145,7 +1136,7 @@ msgid ""
 "the interaction."
 msgstr ""
 "もちろんクロージャの中には\\ ``println``\\ といった、より多くのコードを"
-"含むことができます。この例ではメソッドの引数がインタラクションと"
+"含むことができます。この例ではメソッドの引数が相互作用と"
 "一致するたびに例外がスローされます。"

 # 04e96047ccb94d8daa1cbdd7747d71c8
@@ -1186,8 +1177,8 @@ msgid ""
 "same interaction. In particular, the following Mockito-style splitting of "
 "stubbing and mocking into two separate statements will *not* work::"
 msgstr ""
-"モックとスタブを同じメソッドに対して使用する場合は、同じインタラクションとして"
-"宣言する必要があります。これはMockitoのようにモック化とスタブ化を"
+"モックとスタブを同じメソッドに対して使用する場合は、同じ相互作用として"
+"宣言する必要があります。これはMockitoのようにモックする処理とスタブする処理を"
 "別々に宣言することが\\ *できません*\\ 。"

 # b6f2c8d0b2f44fdbab3d1c66425b67c2
@@ -1201,11 +1192,11 @@ msgid ""
 "the ``setup:`` block will never get a chance to match."
 msgstr ""
 ":ref:`WhereToDeclareInteractions`\\ で説明したように\\ ``receive``\\ が呼ばれると、"
-"まずはじめに\\ ``then:``\\ ブロックで宣言したインタラクションが評価されます。"
-"このインタラクションは特定のレスポンスが指定されていないため、メソッドの"
+"まずはじめに\\ ``then:``\\ ブロックで宣言した相互作用が評価されます。"
+"この相互作用は特定のレスポンスが指定されていないため、メソッドの"
 "デフォルトの値(この場合は\\ `null`\\ )を返します(これはSpockがlenient(緩い)なモック"
 "のアプローチを採用しているためです)。このため、\\ ``setup:``\\ ブロックで"
-"宣言したインタラクションは決して評価されることがありません。"
+"宣言した相互作用は決して評価されることがありません。"

 # cbc4d7b4da774f2bbf80c1bf20bf526e
 #: ../../interaction_based_testing.rst:623
@@ -1213,7 +1204,7 @@ msgid ""
 "Mocking and stubbing of the same method call has to happen in the same "
 "interaction."
 msgstr ""
-"同じメソッドに対するモックとスタブは同じインタラクションとして"
+"同じメソッドに対するモックとスタブは同じ相互作用として"
 "宣言しなければなりません。"

 # 665c938e1ff047d19f8e8a50f468bbdd