DIを用いた単体テストとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > DIを用いた単体テストの意味・解説 

DIを用いた単体テスト

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/06/17 02:57 UTC 版)

依存性の注入」の記事における「DIを用いた単体テスト」の解説

DI用いることで、単体テストにおいて簡単に依存性テスト用のクラスモックオブジェクト等)に差し替えることができる。以下はDI用いた前述のVerySimpleStockTraderImplクラステストケースの例である。この例では、IOnlineBrokerageService, IStockAnalysisServiceインタフェース実装したテストクラス作成しDIによりそれを注入することで、実際クラス用いことなく単体テスト実現している。 public class VerySimpleStockBrokerTest { // IOnlineBrokerageServiceを実装した単純なスタブ public class StubBrokerageService implements IOnlineBrokerageService { public String[] getStockSymbols() { return new String[] {"ACME"}; } public double getBidPrice(String stockSymbol) { return 100.0; // (テスト十分な値) } public double getAskPrice(String stockSymbol) { return 100.25; } public void putBuyOrder(String stockSymbol, int shares, double buyPrice) { Assert.Fail("Should not buy ACME stock!"); } public void putSellOrder(String stockSymbol, int shares, double sellPrice) { // このテストでは使用しない throw new NotImplementedException(); } } public class StubAnalysisService implements IStockAnalysisService { public double getEstimatedValue(String stockSymbol) { if (stockSymbol.equals("ACME")) return 1.0; return 100.0; } } public void TestVerySimpleStockTraderImpl() { // このテスト専用依存性指定するため、DIコンテナ直接登録している DependencyManager.register( IOnlineBrokerageService.class, StubBrokerageService.class); DependencyManager.register( IStockAnalysisService.class, StubAnalysisService.class); IAutomatedStockTrader stockTrader = (IAutomatedStockTrader) DependencyManager.create(IAutomatedStockTrader.class); stockTrader.executeTrades(); }} 実装DBネットワークアクセスする場合、また古いEJBのような重たいコンポーネント場合そのままでは単体テストを行うことは難しい。しかし、上記のようにDI用いて依存関係のみをテスト用のものに差し替えることで、本来のテスト対象プログラムには手を加えることなく簡単に単体テストを行うことができる。

※この「DIを用いた単体テスト」の解説は、「依存性の注入」の解説の一部です。
「DIを用いた単体テスト」を含む「依存性の注入」の記事については、「依存性の注入」の概要を参照ください。

ウィキペディア小見出し辞書の「DIを用いた単体テスト」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「DIを用いた単体テスト」の関連用語

DIを用いた単体テストのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



DIを用いた単体テストのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの依存性の注入 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS