SlideShare une entreprise Scribd logo
1  sur  34
Télécharger pour lire hors ligne
UnitTestで定時帰宅!



             船戸 隆
        2009/06/19
Agenda
• ユニットテストとは
• なぜユニットテストを書くの?
• ユニットテストの書き方
• まとめ
ユニットテストとは
そもそもテストとは
• ソフトウェアテスト
 > コンピュータのプログラムを実行し、正し
  く動作するかどうか確認する作業
 > プログラム中の欠陥(バグ)をできる限り
  多く発見することを目標として行われる
 > ソフトウェアテストに成功するとは、欠陥
  を発見することである。ソフトウェアテス
                 Via:Wikipedia

  トでは、欠陥が存在することを示すことは
ユニットテストとは
• 単体テスト(Unit Testing)
 > 単体テスト、あるいはユニットテストと
     は、メソッドなどの小さな単位で行うテス
     トのことである。単体テストは、ホワイト
     ボックステストを利用して行われる場合が
     多い。                    プログラムは
       機能     機能    複数の機能(モジュール)が
         機能    機能
 >   品質を上げることはできるが、要求を満た
           機能    機能
                    組み合わさって成り立ってい
                              る。
                         機能単位でユニットテストを
     しているかはわからない              作る
ユニットテストとは
• アジャイルな開発手法で必須
 > 仕様通りに動くか確認

• ユニットテストが仕様書にもなる
 > ドキュメントはメンテナンスがされなくな
  る        アジャイルフトウェア開発

 > 動いているものが正解
        迅速かつ適応的にソフトウェア開発を
          行う軽量な開発手法群の総称 。
         代表的な手法にXPやスクラムなどがあ
                る。
ユニットテストの問題点
• まとまった報告書として残りにくい
 > 小さなモジュールの単位なので

• 個人差が出やすい
 > 各個人のレベルのテストケースになりがち


  規約、計画、レビューでカバーしよう
なぜユニットテストを書く
     の?
なぜユニットテストを書く
          の?

• 問題を小さなうちに摘み取る
• 問題の発生を初期の段階で防ぐ
• 仕様の確認
               あなたの書い
• 使い方がわかる      たコードは本
               当に正しいで
                  すか?
問題を小さなうちに摘み取る
• 問題を小さなうちに摘み取る
 > ハインリッヒの法則
  • 1件の重大災害の裏には、29件のかすり傷程度
   の軽災害があり、さらにその裏にはケガはな
   いものの300件のヒヤリとした体験が存在して
                   1件の重大な事故・災害
   いる               29件の軽微な事故・災

 > 問題は後になるほど重症化する害
                 300件のヒヤリ・ハット

  • 問題が広範囲にわたる
問題の発生を初期の段階で防
            ぐ
• 問題の発生を初期の段階で防ぐ
                      リリースする前の
 > 動かない                問題発覚と
                     リリース後の問題発覚
  • ユニットテストで動かしてみる
                     コストが高いのは?

 > 間違った動作
  • 検証することで確認する

 > 性能
  • 実際に動かすことで確認できる
仕様の確認
• 仕様の確認
 > アジャイルな開発では実装のよりどころと
  するドキュメントが少ない。実装を説明す
  るよりもテストコードを見たほうが早い
 > 机上の設計書よりも動くコード
使い方がわかる
• 使い方
 > ユニットテスト見れば、そのクラスの使い
  方、何をしているかわかる
 > 学習テスト   学習したいライブラリなどをユニット
           テスト書いて実行して使い方や内容を
           確認します。書いて使って覚える!
ユニットテストの書き
     方
ユニットテストの書き方

• 計画しよう
• 規約を作ろう
• ツールを使おう
            書けばいいって
            もんじゃない!
計画しよう
1.仕様の理解
2.仕様の観点からテストケース抽出
3.プログラム構造の理解(設計)
4.プログラムの観点からテストケース
抽出
5.テストシナリオを考える
規約を作ろう ・場当たり的なテストはしな
                      い。
• 書き方の規約              ・環境に依存したテストは注
                      意
 > テストメソッドの規約         ・テストを書けないものもあ
                      る
  • メソッド名はtest~から始まる

 > テストクラス名の規約
  • テスト対象のクラス名+Test

 > テストケースはシンプルに
  • 複雑なテストケースになる場合は設計を見直す
ツールを使おう
• ツール
 > Junitはあたりまえ
   • Junit4を使いましょう。アノテーション便利

 > Seasar周りのテストツール
 > Eclipseプラグイン
   • Seasar使ってるならS2Junit4 Pluginを入れよう
      – http://s2junit4plugin.sandbox.seasar.org/
      – ただしQuickJunitと相性悪し

 > Maven2
   • レポート作ってくれる
ツールを使おう
• Junit
  > Greenになると気持ちいい

  > 以下略
ツールを使おう
• S2JUnit4
  > できること
    • 自動フィールドバインディング
    • DBアクセス
       – DataAccessor
    • MockIntercept
       – インターフェースなしでメソッドの返り値を自由自
         在

    • テストデータを自動で用意
         http://s2container.seasar.org/2.4/ja/S2JUnit4.html

    • 検証用データとDBの比較
ツールを使おう
• S2JUnit4 Plugin for Eclipse
  > もともとはQuickJunitの派生

  > Ctrl+9でテストコードと実装コードを行
   き来
  > Ctrl+0でテスト実行、Ctrl+Shift+0でデバッグ

  > Ctrl+Shift+9 でテスト用Diconファイル編
               http://s2junit4plugin.sandbox.seasar.org/
   集
ツールを使おう
• Maven2
  > mvn testでテスト実行

  > mvn siteでテストリポート作成
    • テスト結果とかカバレッジとか
ツールを使おう
• Hudson
  > 「継続的インテグレーション」
   (Continuous Integration )
    • ファウラーたんによって広められた
    • 別々に開発された部品を持ち寄ってお互いの
     動作を検証する「統合テスト」を早い段階か
     ら恒常的に行うこと

    • CIは単に統合テストだけではなく,広くビル
S2Junit4を掘り下げてみる
• 自動フィールドバインディング
 > ルール
  • バインディング対象のフィールドは非static、非final、
   非プリミティブ型かつnull
  • フィールドの変数定義がインターフェース型でそのイン
   タフェースをもつコンポーネントがコンテナに存在する
   場合、そのコンポーネントがフィールドにセットされる
  • バインディングは、テストメソッド実行の直前に行われ
                           RunWithで
   る(ただしTestContextインタフェースは例外的に
                           Seasar2.classを
   before()メソッド実行前にバインディングされる)。テ
                              忘れずに
   ストメソッドの実行が終了するとバインディングされた
S2Junit4を掘り下げてみる
• DBアクセス

 > フィールドにDataAccessorを追加してお
  くとDBを操作できるAccessorが自動でDI
  される
  • DBからデータを取り出せる

  • Excelからデータを取り出せる
S2Junit4を掘り下げてみる
• MockIntercept
  > メソッドを呼び出した結果を自由に変更で
   きる
  > 個別のDiconファイルで定義する
  > モックを使ってテストできる
    • LogicのテストをしたいのにBhvが動作する必
     要ないよね

  > アノテーションを使ってもできる
S2Junit4を掘り下げてみる
   • MockIntercept
        > モックにしたいクラスにAOPで
                 <component class="examples.aop.Hello">
                    <aspect>
                       <component class="org.seasar.framework.aop.interceptors.MockInterceptor">
                          <initMethod name="setReturnValue">
このDiconファイ                   <arg>"greeting"</arg>                  メソッド名
                             <arg>"Hello"</arg>
     ルも                   </initMethod>                              返り値名
S2Junit4Plugin            <initMethod name="setReturnValue">
                                                                     OGNL式で書く
                             <arg>"echo"</arg>
   で作る
                             <arg>"Hoge"</arg>
                          </initMethod>
                       </component>
                    </aspect>
                 </component>
S2Junit4を掘り下げてみる
• テストデータを自動で用意
 > ExcelにDBに入れたいデータを書いとくと
  勝手にDB入れてくれる

 > 検証用データも同じ

 > 規約はs2junit2.dicon

 > クラス名.xls

 > クラス名_Expected.xls
まとめ
ユニットテストをしっかりや
           ると
• 仕様変更に強くなる
 > テストがあるから変更にも強い!
• ソースコードの保守がしやすくなる
 > メンテナンスコスト低減
• 品質が上がる
 > 最初の時点でバグつぶし
 > 要求に対する適合度
• 設計がシンプルになる
 > テストがシンプルなら設計もシンプル
その結果・・・
障害の少ない堅牢なシステム
 メンテナンスが楽チン
障害の少ない堅牢なシステム
 メンテナンスが楽チン
障害の少ない堅牢なシステム
 メンテナンスが楽チン



    作業が減るので定時帰
        宅!

Contenu connexe

Tendances

ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテストビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテストTsutomu Chikuba
 
TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講Takashi Imagire
 
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践JustSystems Corporation
 
リファクタリング読書会20120220
リファクタリング読書会20120220リファクタリング読書会20120220
リファクタリング読書会20120220Suguru Shirai
 
キーワード駆動によるシステムテストの自動化について 2015
キーワード駆動によるシステムテストの自動化について 2015キーワード駆動によるシステムテストの自動化について 2015
キーワード駆動によるシステムテストの自動化について 2015Toru Koido
 
xUnit Test Patterns - Chapter19
xUnit Test Patterns - Chapter19xUnit Test Patterns - Chapter19
xUnit Test Patterns - Chapter19Takuto Wada
 
テストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常ですテストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常ですryuji koyama
 
システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章nihon buson
 
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめhakoika-itwg
 
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるにはGUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるにはNozomi Ito
 
xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16Takuto Wada
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EETaiichilow Nagase
 
テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編Hisakuni Fujimoto
 
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術finoue
 
iOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyoiOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyoKoji Hasegawa
 
モックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-Cモックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-CShoichi Matsuda
 
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介Shinsuke Matsuki
 
C++でテスト駆動開発
C++でテスト駆動開発C++でテスト駆動開発
C++でテスト駆動開発Akineko Shimizu
 
事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイントHiroshi Maekawa
 

Tendances (20)

ビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテストビジネス的に高価値なアジャイルテスト
ビジネス的に高価値なアジャイルテスト
 
TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講TDD Boot Camp Tokyo for C++ 2014-01 補講
TDD Boot Camp Tokyo for C++ 2014-01 補講
 
JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践JustTechTalk#10 React開発における自動テスト実践
JustTechTalk#10 React開発における自動テスト実践
 
リファクタリング読書会20120220
リファクタリング読書会20120220リファクタリング読書会20120220
リファクタリング読書会20120220
 
キーワード駆動によるシステムテストの自動化について 2015
キーワード駆動によるシステムテストの自動化について 2015キーワード駆動によるシステムテストの自動化について 2015
キーワード駆動によるシステムテストの自動化について 2015
 
xUnit Test Patterns - Chapter19
xUnit Test Patterns - Chapter19xUnit Test Patterns - Chapter19
xUnit Test Patterns - Chapter19
 
テストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常ですテストエンジニアのおっさんの日常です
テストエンジニアのおっさんの日常です
 
システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章システムテスト自動化標準ガイド第7章
システムテスト自動化標準ガイド第7章
 
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
 
GUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるにはGUI自動テストの保守性を高めるには
GUI自動テストの保守性を高めるには
 
xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE
 
テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編
 
Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術Awsで実現するseleniumテスト高速術
Awsで実現するseleniumテスト高速術
 
iOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyoiOSアプリ開発でもTravis CI #eytokyo
iOSアプリ開発でもTravis CI #eytokyo
 
モックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-Cモックライブラリを使ってきちんとユニットテストする #Objective-C
モックライブラリを使ってきちんとユニットテストする #Objective-C
 
自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介自動テスト知識体系TABOKのご紹介
自動テスト知識体系TABOKのご紹介
 
C++でテスト駆動開発
C++でテスト駆動開発C++でテスト駆動開発
C++でテスト駆動開発
 
Stac2014 石川
Stac2014 石川Stac2014 石川
Stac2014 石川
 
事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント事例から見るテスト自動化のポイント
事例から見るテスト自動化のポイント
 

Similaire à Unit testで定時帰宅!

Continuous delivery chapter4
Continuous delivery chapter4Continuous delivery chapter4
Continuous delivery chapter4favril1
 
テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門Satoshi Watanabe
 
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストはこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストSeiji KOMATSU
 
ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略Naoki Umehara
 
継続的デリバリー読書会資料 #1
継続的デリバリー読書会資料 #1継続的デリバリー読書会資料 #1
継続的デリバリー読書会資料 #1Yusuke HIDESHIMA
 
アジャイル×テスト開発を考える
アジャイル×テスト開発を考えるアジャイル×テスト開発を考える
アジャイル×テスト開発を考えるyasuohosotani
 
Introduction to Continuous Testing
Introduction to Continuous TestingIntroduction to Continuous Testing
Introduction to Continuous TestingAtsuhiro Kubo
 
Gui自動テストツール基本
Gui自動テストツール基本Gui自動テストツール基本
Gui自動テストツール基本Tsuyoshi Yumoto
 
テスト自動化とアーキテクチャ
テスト自動化とアーキテクチャテスト自動化とアーキテクチャ
テスト自動化とアーキテクチャToru Koido
 
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1Hiro Yoshioka
 
継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージ継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージYasutomo Arai
 
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦urasandesu
 
xUTP Chapter19 (2). Testcase Class
xUTP Chapter19 (2). Testcase ClassxUTP Chapter19 (2). Testcase Class
xUTP Chapter19 (2). Testcase ClassTakuto Wada
 
ソフトウェアテスト入門
ソフトウェアテスト入門ソフトウェアテスト入門
ソフトウェアテスト入門iKenji
 
GCSアジャイル開発を使ったゲームの作り方
 GCSアジャイル開発を使ったゲームの作り方 GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方Hiroyuki Tanaka
 
テストを分類してみよう!
テストを分類してみよう!テストを分類してみよう!
テストを分類してみよう!Kenji Okumura
 

Similaire à Unit testで定時帰宅! (20)

Continuous delivery chapter4
Continuous delivery chapter4Continuous delivery chapter4
Continuous delivery chapter4
 
Gamedevenvstudy1
Gamedevenvstudy1Gamedevenvstudy1
Gamedevenvstudy1
 
テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門テスト初心者Androiderのためのソフトウェアテスト入門
テスト初心者Androiderのためのソフトウェアテスト入門
 
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストはこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
 
ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略ぼくのかんがえた iOSテスト戦略
ぼくのかんがえた iOSテスト戦略
 
継続的デリバリー読書会資料 #1
継続的デリバリー読書会資料 #1継続的デリバリー読書会資料 #1
継続的デリバリー読書会資料 #1
 
アジャイル×テスト開発を考える
アジャイル×テスト開発を考えるアジャイル×テスト開発を考える
アジャイル×テスト開発を考える
 
Software testing
Software testingSoftware testing
Software testing
 
Introduction to Continuous Testing
Introduction to Continuous TestingIntroduction to Continuous Testing
Introduction to Continuous Testing
 
Gui自動テストツール基本
Gui自動テストツール基本Gui自動テストツール基本
Gui自動テストツール基本
 
テスト自動化とアーキテクチャ
テスト自動化とアーキテクチャテスト自動化とアーキテクチャ
テスト自動化とアーキテクチャ
 
テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1テスト勉強会よしおか100311 1
テスト勉強会よしおか100311 1
 
継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージ継続的デリバリー読書会 第 7 章 コミットステージ
継続的デリバリー読書会 第 7 章 コミットステージ
 
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦
 
xUTP Chapter19 (2). Testcase Class
xUTP Chapter19 (2). Testcase ClassxUTP Chapter19 (2). Testcase Class
xUTP Chapter19 (2). Testcase Class
 
ソフトウェアテスト入門
ソフトウェアテスト入門ソフトウェアテスト入門
ソフトウェアテスト入門
 
GCSアジャイル開発を使ったゲームの作り方
 GCSアジャイル開発を使ったゲームの作り方 GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
 
ITS fidel
ITS fidelITS fidel
ITS fidel
 
テストを分類してみよう!
テストを分類してみよう!テストを分類してみよう!
テストを分類してみよう!
 
CruiseControl.NET設置
CruiseControl.NET設置CruiseControl.NET設置
CruiseControl.NET設置
 

Plus de Funato Takashi

プログラムを作って飯を食うということ
プログラムを作って飯を食うということプログラムを作って飯を食うということ
プログラムを作って飯を食うということFunato Takashi
 
Springでdao 20070413
Springでdao 20070413Springでdao 20070413
Springでdao 20070413Funato Takashi
 
スレッドダンプの読み方
スレッドダンプの読み方スレッドダンプの読み方
スレッドダンプの読み方Funato Takashi
 

Plus de Funato Takashi (7)

プログラムを作って飯を食うということ
プログラムを作って飯を食うということプログラムを作って飯を食うということ
プログラムを作って飯を食うということ
 
Git flow cheatsheet
Git flow cheatsheetGit flow cheatsheet
Git flow cheatsheet
 
Springでdao 20070413
Springでdao 20070413Springでdao 20070413
Springでdao 20070413
 
Maven2 plugin
Maven2 pluginMaven2 plugin
Maven2 plugin
 
問題解決ノ勘所
問題解決ノ勘所問題解決ノ勘所
問題解決ノ勘所
 
Javaでmongo db
Javaでmongo dbJavaでmongo db
Javaでmongo db
 
スレッドダンプの読み方
スレッドダンプの読み方スレッドダンプの読み方
スレッドダンプの読み方
 

Dernier

PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 

Dernier (7)

PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 

Unit testで定時帰宅!

Notes de l'éditeur

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n