TestController実装サービス jp.ossc.nimbus.service.test.TestControllerService

jp.ossc.nimbus.service.test.TestControllerServiceは、デフォルトTestController実装サービスです。

このサービスは、複合的なサービスで、以下のサービスを下位サービスとして使用します。

下位サービスインタフェース用途
jp.ossc.nimbus.service.test.TestResourceManagerテストの内容を定義したテストリソースを取得する。
jp.ossc.nimbus.service.test.StubResourceManagerテストスタブにスタブが応答するためのスタブリソースを渡し、スタブが呼び出された内容を取得する。
jp.ossc.nimbus.service.test.TestStubテスト対象が呼び出すスタブを制御する。
jp.ossc.nimbus.service.test.TestEventListenerテストの開始や終了などのテストイベントを通知する

以下に簡単なサービス定義を示します。

  1. <?xml version="1.0" encoding="Shift_JIS"?>
  2. <!DOCTYPE server PUBLIC
  3. "-//Nimbus//DTD Nimbus 1.0//JA"
  4. "http://nimbus.sourceforge.jp/dtd/nimbus-service_1_0.dtd">
  5. <server>
  6. <manager>
  7. <!-- TestControllerサービス -->
  8. <service name="TestController"
  9. code="jp.ossc.nimbus.service.test.TestControllerService">
  10. <!-- テストのリソースファイルを展開するディレクトリを設定する -->
  11. <attribute name="TestResourceFileBaseDirectory">./controller</attribute>
  12. <!-- テストのリソースファイルを一時的に展開するディレクトリを設定する -->
  13. <attribute name="TestResourceFileTempDirectory">./tmp</attribute>
  14. <!-- テストのリソースファイルを取得するTestResourceManagerサービスのサービス名を設定する -->
  15. <attribute name="TestResourceManagerServiceName">#TestResourceManager</attribute>
  16. <!-- スタブのリソースファイルを取得するStubResourceManagerサービスのサービス名を設定する -->
  17. <attribute name="StubResourceManagerServiceName">#StubResourceManager</attribute>
  18. <!-- テスト対象が呼び出すスタブとなるTestStubサービスのサービス名を設定する -->
  19. <attribute name="TestStubServiceNames">#WebStub</attribute>
  20. <depends>TestResourceManager</depends>
  21. <depends>StubResourceManager</depends>
  22. <depends>WebStub</depends>
  23. </service>
  24. <!-- TestResourceManagerサービス -->
  25. <service name="TestResourceManager"
  26. code="jp.ossc.nimbus.service.test.resource.LocalTestResourceManagerService">
  27. <attribute name="TestResourceDirectory">./test</attribute>
  28. <attribute name="TemplateEngineServiceName">#TemplateEngine</attribute>
  29. <depends>TemplateEngine</depends>
  30. </service>
  31. <!-- TemplateEngineサービス -->
  32. <service name="TemplateEngine"
  33. code="jp.ossc.nimbus.service.test.resource.VelocityTemplateEngineService">
  34. <attribute name="TemplateResourceDirectory">./template</attribute>
  35. </service>
  36. <!-- StubResourceManagerサービス -->
  37. <service name="StubResourceManager"
  38. code="jp.ossc.nimbus.service.test.resource.LocalStubResourceManagerService">
  39. <attribute name="TemporaryDirectory">./tmp</attribute>
  40. </service>
  41. <!-- Webサーバのサービス -->
  42. <service name="WebStubServer"
  43. code="jp.ossc.nimbus.service.http.proxy.ProxyServerService">
  44. <attribute name="Port">10000</attribute>
  45. <attribute name="ProcessServiceName">#WebStub</attribute>
  46. <depends>
  47. <!-- WebサーバのTestStubサービス -->
  48. <service name="WebStub"
  49. code="jp.ossc.nimbus.service.test.stub.http.HttpTestStubService">
  50. <attribute name="Id">WebServer</attribute>
  51. <attribute name="StubResourceManagerServiceName">#StubResourceManager</attribute>
  52. <attribute name="ResourceDirectory">./stub</attribute>
  53. <depends>StubResourceManager</depends>
  54. </service>
  55. </depends>
  56. </service>
  57. </manager>
  58. </server>


テストフレームワーク/テストコントローラ