Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
NSEG 第3回勉強会


                @koty



2010/5/22      第3回 NSEG 勉強会   1
自己紹介

• にしざわこういち(@koty)

• 市内の情報サービス会社勤務

• VB.NET C# ASP.NET




2010/5/22         第3回 NSEG 勉強会   2
今回のお話は・・・・




2010/5/22   第3回 NSEG 勉強会   3
テストコードを
  書こう!
2010/5/22   第3回 NSEG 勉強会   4
アジェンダ

• テストコードを書くことの利点
• 四則演算のテスト
• 簡単な業務ロジックのテスト



・環境はVisual Studio 2010
・言語はVB.NET

2010/5/22       第3回 NSEG 勉強会   5
テストコードを書くことの利点

• 退行テストの自動化
      – ライフサイクルの長いパッケージに最適

• 安全なリファクタリングの実現
      – 修正して祈る⇔保護して修正する

• クラウド
      – ミドルウェアやOS...
Demo:
テストコードの書き方@四則演算




2010/5/22   第3回 NSEG 勉強会   7
このような

2010/5/22     第3回 NSEG 勉強会   8
四則演算の
       例はよく
       見かける
2010/5/22   第3回 NSEG 勉強会   9
しかし。。

2010/5/22    第3回 NSEG 勉強会   10
ホンモノの
      システムは
2010/5/22   第3回 NSEG 勉強会   11
もっと
            複雑
2010/5/22   第3回 NSEG 勉強会   12
続いて。。。

2010/5/22   第3回 NSEG 勉強会   13
もうちょっと
   現実的な例
2010/5/22   第3回 NSEG 勉強会   14
Demo:
ちょっとだけ複雑な業務ロジック
Demo:
ちょっとだけ複雑な業務ロジック




            税込金額         税抜金額

               税金計算                  税率
                クラス      ...
Demo:
ちょっとだけ複雑な業務ロジックをテストしたい




2010/5/22   第3回 NSEG 勉強会   17
Demo:
ちょっとだけ複雑な業務ロジックをテストしたい




                      税金計算              税率
                       クラス             丸め方法
  ...
心配ごと

• テストのためだけのロジックがプロダクション
  コードに入ってていいの?

      – いーんです !
      – テスト以外で呼ばれたらエラーするように配慮
            • RaiseErrorIfCall...
まとめ

• テストコードをうまいこと書くコツ
      – 外部に依存している部分を
        テストコード側から制御できるよう
        いろんな手段を駆使して
        プロダクションコードを作る




2010/5...
おしまい




                       To Be Continued ?...
2010/5/22   第3回 NSEG 勉強会                  21
Nächste SlideShare
Wird geladen in …5
×

NSEG第3回勉強会

1.610 Aufrufe

Veröffentlicht am

NSEGでテストコードの書き方について話しました。

  • Loggen Sie sich ein, um Kommentare anzuzeigen.

  • Gehören Sie zu den Ersten, denen das gefällt!

NSEG第3回勉強会

  1. 1. NSEG 第3回勉強会 @koty 2010/5/22 第3回 NSEG 勉強会 1
  2. 2. 自己紹介 • にしざわこういち(@koty) • 市内の情報サービス会社勤務 • VB.NET C# ASP.NET 2010/5/22 第3回 NSEG 勉強会 2
  3. 3. 今回のお話は・・・・ 2010/5/22 第3回 NSEG 勉強会 3
  4. 4. テストコードを 書こう! 2010/5/22 第3回 NSEG 勉強会 4
  5. 5. アジェンダ • テストコードを書くことの利点 • 四則演算のテスト • 簡単な業務ロジックのテスト ・環境はVisual Studio 2010 ・言語はVB.NET 2010/5/22 第3回 NSEG 勉強会 5
  6. 6. テストコードを書くことの利点 • 退行テストの自動化 – ライフサイクルの長いパッケージに最適 • 安全なリファクタリングの実現 – 修正して祈る⇔保護して修正する • クラウド – ミドルウェアやOSのバージョンアップを制御できない – よって自動の退行テストが不可欠 (force.comはテストコードを義務化している) 2010/5/22 第3回 NSEG 勉強会 6
  7. 7. Demo: テストコードの書き方@四則演算 2010/5/22 第3回 NSEG 勉強会 7
  8. 8. このような 2010/5/22 第3回 NSEG 勉強会 8
  9. 9. 四則演算の 例はよく 見かける 2010/5/22 第3回 NSEG 勉強会 9
  10. 10. しかし。。 2010/5/22 第3回 NSEG 勉強会 10
  11. 11. ホンモノの システムは 2010/5/22 第3回 NSEG 勉強会 11
  12. 12. もっと 複雑 2010/5/22 第3回 NSEG 勉強会 12
  13. 13. 続いて。。。 2010/5/22 第3回 NSEG 勉強会 13
  14. 14. もうちょっと 現実的な例 2010/5/22 第3回 NSEG 勉強会 14
  15. 15. Demo: ちょっとだけ複雑な業務ロジック
  16. 16. Demo: ちょっとだけ複雑な業務ロジック 税込金額 税抜金額 税金計算 税率 クラス 丸め方法 テストのために 税金計算テスト DBをupdateしな 2010/5/22 第3回 NSEG 勉強会 ければいけない 16
  17. 17. Demo: ちょっとだけ複雑な業務ロジックをテストしたい 2010/5/22 第3回 NSEG 勉強会 17
  18. 18. Demo: ちょっとだけ複雑な業務ロジックをテストしたい 税金計算 税率 クラス 丸め方法 税抜金額 税率・丸め方法 税込金額 テストのための 税金計算 DBのupdateが テスト 不要! 2010/5/22 第3回 NSEG 勉強会 18
  19. 19. 心配ごと • テストのためだけのロジックがプロダクション コードに入ってていいの? – いーんです ! – テスト以外で呼ばれたらエラーするように配慮 • RaiseErrorIfCalledFromProductionCode 2010/5/22 第3回 NSEG 勉強会 19
  20. 20. まとめ • テストコードをうまいこと書くコツ – 外部に依存している部分を テストコード側から制御できるよう いろんな手段を駆使して プロダクションコードを作る 2010/5/22 第3回 NSEG 勉強会 20
  21. 21. おしまい To Be Continued ?... 2010/5/22 第3回 NSEG 勉強会 21

×