並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1156件

新着順 人気順

単体テストの検索結果1 - 40 件 / 1156件

  • 「単体テスト」再入門! 開発の現場でバグを確実に洗い出す最適な手法と、テストケースの作り方 - エンジニアHub|Webエンジニアのキャリアを考える!

    「単体テスト」再入門! 開発の現場でバグを確実に洗い出す最適な手法と、テストケースの作り方 単体テストの定義から手法、未来の展望までを、日本におけるソフトウェアテストの第一人者・高橋寿一さんが解説します。 ソフトウェアのテストにおいて、最初のフェーズである単体テスト。若手Webエンジニアの中には、いきなり単体テストを任されて戸惑った方もいるでしょう。仕方なく現場で踏襲されているやり方に従っているだけ、ということもあるのではないでしょうか? 今回は、単体テストの定義から手法、未来の展望までを、日本におけるソフトウェアテストの第一人者・高橋寿一さんが解説します。 単体テストとは(各社ばらばらな単体テストの定義を再定義) コードベースの単体テスト 命令網羅(C0カバレッジ) 分岐網羅(C1カバレッジ) よくある(コードベースの)単体テストの間違い 機能単位の単体テスト 例:複雑なソート機能のテス

      「単体テスト」再入門! 開発の現場でバグを確実に洗い出す最適な手法と、テストケースの作り方 - エンジニアHub|Webエンジニアのキャリアを考える!
    • ITエンジニアが投票した「ITエンジニア本大賞2024」発表。単体テストの考え方/プログラマー脳/ プロジェクトマネジメントの基本が全部わかる、など

      ITエンジニアが投票した「ITエンジニア本大賞2024」発表。単体テストの考え方/プログラマー脳/ プロジェクトマネジメントの基本が全部わかる、など 「ITエンジニア本大賞」は、仕事の役に立った本、初学者におすすめの本、ずっと手元に置いておきたい本など、おすすめの本をITエンジニアがWeb投票で選ぶイベントです。 主催は翔泳社ですが、対象となる書籍は出版社を問わず技術書、ビジネス書全般となっています。刊行年も関係なく、これまで大賞に選出された書籍を除き、この1年を振り返っておすすめしたい書籍が対象となります。 今回発表されたのは技術書部門とビジネス書部門それぞれのベスト10です。現時点では50音順に並んでいます。 以下は選出された技術書部門とビジネス書部門それぞれのベスト10を、Amazon.co.jpへのリンクと画像、概要で紹介したものです(アフィリエイトリンクは含まれていません)。正式

        ITエンジニアが投票した「ITエンジニア本大賞2024」発表。単体テストの考え方/プログラマー脳/ プロジェクトマネジメントの基本が全部わかる、など
      • 単体テストを“神速”化するQuick JUnitとMockito

        単体テストを“神速”化するQuick JUnitとMockito:ユカイ、ツーカイ、カイハツ環境!(16) Quick JUnitプラグインの3つの大きな特徴 近年、JUnitとHudsonを利用した継続的インテグレーション(CI)によるテストの自動化や、テスト駆動開発(TDD)の普及などにより、ユニットテスト(単体テスト)のテストコードの作成が重要視されています。 今回紹介する「Quick JUnit」プラグインは、JUnitによるテストコードの作成と実装を支援するEclipseプラグインです。Quick JUnitプラグインは石井勝さんにより開発されていましたが、石井さんが不慮の事故により死去後、Quick JUnitプラグインプロジェクトにより開発が継続されています。優れたオープンソースプロジェクトの模範のようなプロジェクトです。 訂正のお知らせ 故人のお名前について間違いがあり、修

          単体テストを“神速”化するQuick JUnitとMockito
        • たった2つのステップを意識するだけで書けない単体テストがほぼなくなる - Qiita

          はじめに この記事は レガシーコード改善ガイド: 保守開発のためのリファクタリング を参考に手を動かしてみて、ある程度自分の中で体系的にまとまった知識のアウトプットです。 この記事で扱う内容 この記事で扱うのは主にレガシーコードで単体テストを書く際のハードルになりがちな 依存関係の排除 に関する手法を紹介します。 この記事を読んだ後に、 『この観点を持っておけば単体テストをスムーズに書いていけそう!』 『今までモック使ってたけど意外とモック使わなくても書けるね!』 となったらいいな、と思います。 ちなみに、今まであんまりテスト書いたことないよーて人は以下の記事など参考にして一度やってみてください。 前提の話: この記事の本旨は「テスト書きにくいプロダクトコードも依存関係を排除すれば楽にテスト書けるよ」なので、それ設計的にアウトでは?リファクタリング耐性低くない?みたいな話は度外視してます。

            たった2つのステップを意識するだけで書けない単体テストがほぼなくなる - Qiita
          • 新卒1年目が荒れ果てた開発環境に1年間でCIを導入し単体テストを布教した話 - Qiita

            この記事は 「Develop fun!」を体現する Works Human Intelligence Advent Calendar 2020 21日目の記事です。 昨日の記事は@sparklingbabyさんのStream API がもっとわかる記事でした。 あらすじ 私は2019年にWorks Human Intelligence(正確には分社前の会社)に新卒入社し、 19年10月からプロダクト開発部門に配属され、SETエンジニアとしてとある製品のJava開発環境の改善に取り組んでいます。 ざっくりとプロダクト開発を紹介するとこんな感じです。 3万クラス程度ある大規模Java Webアプリケーション 開発環境はEclipseを使用 開発者のOSはWindowsのみ Before 私が開発チームに参加した時点では 部門として新規開発に注力しており、足下の環境改善をやる担当者がおらず、 い

              新卒1年目が荒れ果てた開発環境に1年間でCIを導入し単体テストを布教した話 - Qiita
            • t_wadaさんと「単体テストの使い方/考え方」の疑問点についてディスカッションしました - DeNA Testing Blog

              こんにちは、SWETグループの田熊です。 現在SWETグループでは書籍「単体テストの使い方/考え方」の輪読会を実施しています。 輪読会ではメンバー同士で活発に意見が交わされていますが、著者の主張に疑問を感じる箇所もあり、一度グループ外の方とも意見を交換したいと考えていました。 そこで、t_wadaさんをお招きし「単体テストの使い方/考え方」についてディスカッションする機会を設けました。 本記事では、SWETメンバーとt_wadaさんとのやりとりを紹介したいと思います。 ディスカッションの流れ ディスカッションは事前にSWETグループのメンバーが書籍を読んで疑問に感じたテーマを挙げてもらい、t_wadaさんの意見を聞くという流れで行いました。 今回は次のテーマについて話をしました。 「退行に対する保護」があるテストとはなにか 「リファクタリングへの耐性」のトレードオフはあるのか 統合テストの

                t_wadaさんと「単体テストの使い方/考え方」の疑問点についてディスカッションしました - DeNA Testing Blog
              • 単体テストの考え方/使い方 の感想文 | フューチャー技術ブログ

                はじめにTIG EXU真野です。 積読を消化しようというテーマの、読書感想文連載 の1冊目は、単体テストの考え方/使い方 です。 書籍の基礎情報です 2022年12月28日発売 Unit Testing Principles, Practices, and Patterns の翻訳書。原著は2020年1月14日に発売 テーマ 質の高いテストを行い、ソフトウェアに価値をもたらそう! 単体(unit)テストの原則・実践とそのパターン プロジェクトの持続可能な成長を実現するための戦略 単体テストの原則・実践とそのパターン コード例は C# であるものの、どの言語でも適用できる汎用的な内容とのこと 中を見ると、微妙にC#特有ぽいところに1箇所悩みましたが、それ以外はその通り 翻訳者の須田さんは、他にもセキュア・バイ・デザイン: 安全なソフトウェア設計 やOAuth徹底入門 セキュアな認可システムを

                  単体テストの考え方/使い方 の感想文 | フューチャー技術ブログ
                • なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog

                  ってsinonのスタブ漏れを探しながら何度目かわからない感じにキレてた。 とにかく仕事でJSのテスト書くのが辛いので考えてみる。比較的JSのテストに慣れてる自分ですら辛いのだから、世界はもっと辛いに間違いない。サーバーサイドのnode.jsの話ではない。 JavaScriptで完結しない 構造がHTMLの構造と密結合している。装飾や位置、表示/非表示はCSSによって制御されている。 クライアントJSはHTMLと密結合しており、CSSからビューは影響を受ける。それらがネットワークの結果を受け非同期に振る舞いを帰る。その最終的な値を取得するのが難しい。 もちろんサーバーサイドだってDBやネットワークという外部リソースを扱うが、モックの手法が確立しているし、局所的な複雑度は、JSの方がはるかに多い。 言語仕様が貧弱 mochaやjsmineはrspecを真似てるけど、本質的にJavaScript

                    なぜクライアントJavaScriptの単体テストを書くのが難しいか、考えてみた - mizchi's blog
                  • フロントエンドにおける「単体テストの考え方/使い方」

                    本稿における「単体テスト」とは自動テストにおける単体テストを指します。手動テストのことではないので、ご了承ください。 単体テストの考え方/使い方という本を読みました。筆者自身、「単体テストはプロダクションコードの付属」という意識がどこかにありました。この本を読んで、単体テストについてあまりに何もわかってなかったことに気付かされ、単体テストの設計はプロダクションコードの設計と同じくらい重要という意識に変わりました。何のために単体テストをやるのか、いいテストとは、「単体」とは、など多くの点で学びを得られ、また、多くのプラクティスとアンチパターンを知ることができました。 本稿はこの本を読んで得られた学びを、フロントエンド開発、特にコンポーネント開発に適用することを試みた際のまとめです。より詳細な解説を求む方には本を手に取ってもらう前提で、できるだけポイントを抑えられるようにまとめることを目指しま

                      フロントエンドにおける「単体テストの考え方/使い方」
                    • 1年間単体テストを書き続けた現場から送る Vue Component のテスト / Vue Component Test - Speaker Deck

                      Vue Fes Japan 2018 の 1年間単体テストを書き続けた現場から送る Vue Component のテスト https://vuefes.jp/

                        1年間単体テストを書き続けた現場から送る Vue Component のテスト / Vue Component Test - Speaker Deck
                      • 単体テスト自動化~JUnitの一歩進んだ使い方~

                        キーワードで探す カテゴリで探す トレンドを知る 事例を知る 展望を知る 技術ブログ サービスで探す コンサルティング CRM(Salesforce) ERP(SAP/Biz∫) 顧客接点・決済 カーボンニュートラル SCM・ロジスティクス 電子申請 データ&インテリジェンス アプリケーション開発・管理 ブロックチェーン 量子コンピュータ・イジングマシン デジタルツイン IoT ロボティクス・RPA クラウド ネットワーク データセンター サイバーセキュリティ アウトソーシング 業種で探す 金融 官公庁・自治体 医療・ヘルスケア 防災・レジリエンス 食品 小売・流通 モビリティ 製薬・ライフサイエンス 食農・農業 製造 通信・放送 電力・ガス・水道 建設・不動産 個人のお客様向け 教育 トピックで探す Innovation Conference サステナビリティ キーワードで探す カテゴリ

                          単体テスト自動化~JUnitの一歩進んだ使い方~
                        • 優れたテストスイートの4本の柱を学ぶ - 「単体テストの考え方、使い方」を読んだ - $shibayu36->blog;

                          良いテストケースの作成手法を学ぶ - 「はじめて学ぶソフトウェアのテスト技法」を読んだ - $shibayu36->blog;に引き続き、ソフトウェアテストの知識について言語化を進めたいと考え、「単体テストの考え方、使い方」を読んだ。 単体テストの考え方/使い方 作者:Vladimir Khorikovマイナビ出版Amazon この本では優れたテストスイートの4本の柱を「退行に対する保護」「リファクタリングへの耐性」「迅速なフィードバック」「保守しやすさ」と定義し、これらの観点で優れたテストスイートを作る方法について教えてくれる。またこの4つの柱はトレードオフの関係にあるため、単体テスト・統合テスト・E2Eテストがそれぞれどの観点を重視すべきかなどについても言語化してくれている。 自分はこの本は非常に勉強になった。なぜなら単体テスト・統合テストの指針が明快に記述されていて理解しやすく、また

                            優れたテストスイートの4本の柱を学ぶ - 「単体テストの考え方、使い方」を読んだ - $shibayu36->blog;
                          • 「まともに単体テストを書ける人は実はすごく少ない」 市場バグを発生させない“単体テストで対処する”という考え方

                            品質やテストといった活動が「本質的にアジャイルになって変わらなければならない」といった問題を定義し、その解決手段を提案する「今、全エンジニアに求められる『アジャイル開発での品質視点の変化』」。ここで株式会社デジタルハーツホールディングスの高橋氏が登壇。最後に、あらためて参加者からの質問に回答します。前回はこちらから。 どうすればうまくリファクタリングができるか 高橋寿一氏(以下、高橋):じゃあここでもう1回Q&Aタイムを取ります。 高木陽平氏(以下、高木):ありがとうございます。今Q&Aにまだ質問が上がっていないみたいなので、ちょっと私から質問します。リファクタリングをしなければいけないところって、逆に手をつけられないようなけっこう複雑怪奇な部分だと思うんです。そこらへんはどうすればうまくリファクタリングができるんでしょうっていう(笑)。 高橋:まず、日本人がすごくリファクタリングが嫌いな

                              「まともに単体テストを書ける人は実はすごく少ない」 市場バグを発生させない“単体テストで対処する”という考え方
                            • 単体テストを書かない技術 #phpcon_odawara

                              PHPカンファレンス小田原2024での発表資料です https://fortee.jp/phpconodawara-2024/proposal/4d39c7ef-058c-4648-b1d7-5510497e0d81

                                単体テストを書かない技術 #phpcon_odawara
                              • Java EE6で単体テストや結合テストを自動化する方法について - 達人プログラマーを目指して

                                今週水曜日に、オラクル青山センターで行われたGlassfish Japanユーザーグループの勉強会でJava EE6のお話をさせていただきました。勉強会のスライドとビデオは以下のリンク先にあります。 Glassfish勉強会(JavaEE6について) View more presentations from Ryo Asai http://www.ustream.tv/recorded/16552906 今回は基本的に私がこのブログで書いてきたJava EE6関連の情報について紹介させていただきました。欲張って少し内容を詰め込み過ぎたところがあったかもしれませんが、Java EE6を使った単体試験や結合試験の自動化については、説明をスキップしてしまい、ちょっとわかりにくくなってしまいました。ここで、あらためてJava EE6上のアプリケーションのテスト自動化について簡単に補足させていただき

                                  Java EE6で単体テストや結合テストを自動化する方法について - 達人プログラマーを目指して
                                • PHPUnitでできる単体テスト

                                  はじめに 単体テストとは、システムの構成要素であるクラスやメソッド単位での動作を確認する作業のことを言います。 Webシステムは基本的に不特定多数に公開するものであり、公開前にはきちんとテストを行っておくことが重要です。 PHPにはテストツールとしてPHPUnitという単体テストのツールがあり、PHPUnitを利用するとクラス内のメソッドに対してテスト用のクラスを自動で生成し、効率よくテストすることができます。 PHPUnitを利用して単体テストする場合のプロセスは テスト対象となるクラス、PHPプログラムの作成 1.で作成したクラスからPHPUnit内のクラスを用いてテスト用のクラスを作成 2.で作成したテスト用のクラスに目的に応じてテストメソッドの実体を記述 テスト実行、結果の確認 となります。 本記事では、本連載第4回『GPS携帯を使った口コミサイト構築』の逆ジオコーディング処理をテ

                                    PHPUnitでできる単体テスト
                                  • Visual Studio 2008単体テスト機能のすべて ― @IT

                                    Visual Studio 2008単体テスト機能のすべて:特集:Visual Studio 2008単体テスト機能徹底活用(前編)(1/4 ページ) 連載目次 Visual Studio 2005(以下、VS 2005)では上位エディションであるTeam Developerでのみ利用可能だった単体テスト機能が、Visual Studio 2008(以下、VS 2008)からは、Professional Editionでも利用可能になった。 VS 2008の1機能として導入されるほど単体テストが脚光を浴びるようになったのは、やはりアジャイル開発の普及だろう。アジャイルで開発する場合、単体の品質が非常に重要になる。また、リファクタリングなどで繰り返しテストが必要になるケースが多いため、テストを自動化するという考えが生まれ、単体テストの注目度はさらに増している。 本稿では、このVS 2008

                                      Visual Studio 2008単体テスト機能のすべて ― @IT
                                    • その設計、変更に強いですか?単体テストできますか?...そしてクリーンアーキテクチャ - Qiita

                                      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに アーキテクチャや設計の書籍や記事、これまでの経験も踏まえ、学んだ事をここにまとめたい。(まだ、勉強中なので微妙なところもあるかもしれません。お気付きの点があればご指摘いただけるとありがたいです。) 参考文献や参考記事は、本当に良書、良記事で非常に参考にさせていただきました。 生意気なタイトルにしてしまいましたが、自分への戒めということもあってこのタイトルにさせていただいたので、ご容赦ください。 ある共通した話題 設計やアーキテクチャについて書かれた書籍や記事を読んでいく中で、言葉は違えどかなりの高確率で共通するテーマが存在した

                                        その設計、変更に強いですか?単体テストできますか?...そしてクリーンアーキテクチャ - Qiita
                                      • 単体テスト(画面単位のテスト)がクソらしいので思ったことを書いてみる - うさぎ組

                                        なんか2週間くらいずっと画面単位のテストを単体テストと呼んで、手動テストをする現場についていろいろ文句がSNSで流れていた。それについて思うことをバカスカ書く。 これは、誰かを批難したいわけでもなく、ただの感想である。言うなれば街の風景をみたときの日記だ。そうだよ。これは日記だよ? 要約 だいたいの話は僕が2,3年前にTwitterで言いまくった単体テスト/結合テストなんて存在しない - Togetterまとめに似ていると思ったけど、僕の狭い観測範囲では生産的な結論を迎えずに文句の固まりで終わって、こう非常にあーあっていう気持ちが残った。 あと、観測結果として 同僚や上司に加えてkyon_mmに「なぜその手法でテストをしたいの?ねぇ?なんで?」って聞かれても答えられるか。が相手を評価する目安だと僕自身が自覚した。 というのが大きかった。 単体テスト まず、最初に思ったのはTwitterで文

                                          単体テスト(画面単位のテスト)がクソらしいので思ったことを書いてみる - うさぎ組
                                        • ハンズオン:React チュートリアルからはじめる TypeScript と単体テスト

                                          import { useState } from 'react'; function Square({ value, onSquareClick }) { return ( <button className="square" onClick={onSquareClick}> {value} </button> ); } function Board({ xIsNext, squares, onPlay }) { function handleClick(i) { if (calculateWinner(squares) || squares[i]) { return; } const nextSquares = squares.slice(); if (xIsNext) { nextSquares[i] = 'X'; } else { nextSquares[i] = 'O'; } on

                                            ハンズオン:React チュートリアルからはじめる TypeScript と単体テスト
                                          • 単体テスト計画書 (1) ― 表紙・目次・第1部・第1章

                                            CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

                                              単体テスト計画書 (1) ― 表紙・目次・第1部・第1章
                                            • 単体テストの考え方/使い方を読んだ。読んでよかった。 - Mitsuyuki.Shiiba

                                              読んでよかった book.mynavi.jp 評判通りよかった そっかーなるほどなぁ。面白いなぁ。と思うことがいろいろあった とはいえ、著者の主張全てに同意というわけではなく「著者はそう考えるんだな。自分は違う考えだな」と考えさせられる部分もいくつかあった 苦手な部分もあった 古典学派とロンドン学派に分けて話を展開しているのはあまり好きじゃないなと思いながら読んだ 定理やマトリクスに当てはめて話を展開する部分があって、いくつかは無理やりだったり話をややこしくしていたりするように自分は感じた。そういう部分は苦手だなぁと思いながら読んだ というのが全体の感想。内容はとてもよかったし、苦手な部分もそれはそれで考えさせられたので、読んでよかった。ってことでパラパラめくりながらメモを書いていこう あらためて意識したい2本 「第4章 良い単体テストを構成する4本の柱」の中の2本が、当たり前のことではあ

                                                単体テストの考え方/使い方を読んだ。読んでよかった。 - Mitsuyuki.Shiiba
                                              • 単体テスト/結合テストなんて存在しない

                                                テストプロセスを再定義する時代が来た。 単体テスト、結合テスト、システムテストといったテストレベルがテスト設計において寄与しているメリットはあるのか? また、それらが結局はプロジェクトのマイルストーンをひくための単なる慣習的な単語であり、実作業に悪影響を与えているのではないか。 という疑問をもったうさみみことkyon_mmの話にソフトウェアテストクラスタの方がつきあってくださいました。 kyon_mmは現在、ソフトウェアテストを勉強しはじめたばかりの人です。 続きを読む

                                                  単体テスト/結合テストなんて存在しない
                                                • Jenkinsを使ってビルド~単体テストまで | DevelopersIO

                                                  弊社ブログでも何度か取り上げられているJenkinsですが、今回はこのCIツールを使って「ビルド~単体テスト」までを行いたいと思います。 具体的に何をやるかといえば、「ソースのビルド」「チェックスタイルの実行」「FindBugsの実行」「Junitの実行」といったことを実施します。 Antのインストール 実行環境にAntをインストールする必要があります。 以下のコマンドでAntをダウンロードして解凍し任意の場所に置きます。今回は/usr/local/antに置くこととします。 wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache//ant/binaries/apache-ant-1.8.4-bin.tar.gz tar zxvf apache-ant-1.8.4-bin.tar.gz mv apache-ant-1.8.4 /usr/

                                                  • 単体テストは「2:8の法則」でだいたい品質が担保できる 網羅率・期待値を担保した適切なソリューション

                                                    上流品質を担保するために必要な3つのこと 高橋寿一氏(以下、高橋):Dailyで上流品質を担保するために必要な3つのことです。単体テスト、リファクタリング、要求仕様、ユーザーストーリーのテストケース展開という3つのアクティビティをしっかりやっていただくと、上流でも品質がかなり担保されていくんじゃないのかなと思っています。 単体テストに関しては、基本的には「網羅率を担保してください」みたいなことなので、シンプルです。ただ、まだまだ知られていませんが、0から70パーセントとか80パーセントに持ってくるのは地獄のような作業なので、だいたいみなさん諦めちゃうんです。 でも、テクノロジーが進んでいるのでそこまでやる必要はなくて、「2:8の法則」ですよね。ソフトウェア全体の2割の危ないところだけをテストすれば、だいたい品質は担保されますという。超いい加減な言い方をしましたが、そういうものがあります。

                                                      単体テストは「2:8の法則」でだいたい品質が担保できる 網羅率・期待値を担保した適切なソリューション
                                                    • @IT:明日からできるプロジェクト管理(4) - 単体テストの品質をチェックするには

                                                      明日からできるプロジェクト管理(4) 単体テストの品質をチェックするには 1page|2page|3page 高野敦 2006/1/12 実装・単体テストの品質をうまくチェックするにはどうすればいいのだろうか。本稿ではまず品質の考え方を概観し、その後、チェックを現実化するツールを紹介していく(@IT編集部) プロジェクトマネージャ(=PM)の石出さんは今日も悩んでいます。 石出さん談――。 今度のプロジェクトは実装・単体テストを一括発注することになった。でも一括発注だとどのように品質をチェックしたらいいのだろう。いつものように目の前で作業をしてくれれば分かるんだけれど……。 なるほど、石出さんは実装・単体テストの品質に関して悩んでいるようです。 ◆ 品質の考え方 品質には大きく分けて2つの考え方があります。製品(システム)そのものの品質と製品を作成するプロセス(作り方)の品質です。前者は、

                                                      • GHUnitで単体テストをしてみよう - mixi engineer blog

                                                        初めまして。プログラマのショウといいます。 現在、mixiの公式iPhoneアプリを担当しています。 今回は、iPhoneアプリ開発におけるGHUnitを用いた単体テストについて紹介したいと思います。 ★ テストとは 本題に入る前に少しだけ、テストという概念について整理してみましょう。 ソフトウェアを開発する上での「テスト」という言葉は、「コンピュータのプログラムを実行し、正しく動作するかを確認する作業のこと」を指します。 そしてこの「正しく動作するかを確認する方法」として主に以下の2通りがあります。 ・ ホワイトボックステスト ・ ブラックボックステスト ホワイトボックステストとは、「命令網羅」「分岐網羅」「条件網羅」などの方式を用いて、プログラム内部の動作がプログラマの意図通りとなっているかを確認するものとなります。 これに対してブラックボックステストとは、プログラム内部に関係なく、外

                                                          GHUnitで単体テストをしてみよう - mixi engineer blog
                                                        • FlawedTheoryBehindUnitTesting - 単体テストに潜む誤った理論

                                                          FlawedTheoryBehindUnitTesting - 単体テストに潜む誤った理論 目次 この文書について 単体テストに潜む誤った理論 単体テストに潜む誤った理論 この文書について "The Flawed Theory Behind Unit Testing" の日本語訳です http://michaelfeathers.typepad.com/michael_feathers_blog/2008/06/the-flawed-theo.html 推敲歓迎: 誤訳, タイポ, 訳語の不統一, そのほか... 私は Google の blogsearch 一式を使って単体テストに関する話題を拾っている。 普段は一週間に数十の blog やメーリングリストの議論に目を通す。 新しい話題もたまにはある。けれど、多くの話題は繰り返しだ。同じ主張が何度も現れる。 その中でもひときわ私を悩ませる

                                                          • Visual Studio CodeがJUnitに対応。エディタ上で単体テストの実行、テストのデバッグなどが可能に

                                                            マイクロソフトはオープンソースで開発している無償のコードエディタ「Visual Studio Code」(以下VSCode)をJUnit対応にする拡張機能「Java Test Runner」のリリースを発表しました。 「JUnit」は、Javaで単体テストの自動化を行うためのフレームワークです。さまざまな開発ツールでサポートされており、Javaの単体テストを行う際の事実上の標準といえます。 VSCodeに拡張機能「Java Test Runner」を追加することで、JUnit4のテストを認識し、VSCode上でテストの実行や実行結果、テストコードのデバッグなどが可能になります。 下図は、テストコードを実行するところ。

                                                              Visual Studio CodeがJUnitに対応。エディタ上で単体テストの実行、テストのデバッグなどが可能に
                                                            • よい単体テストの特徴と、書くためのヒント - builder by ZDNet Japan

                                                              Alan Cooper氏著の「The Inmates Are Running the Asylum」(邦題「コンピュータは、むずかしすぎて使えない!」)で、同氏は「軍艦にコンピュータが導入されたら何が起こるか」という問いを発している。同氏は、米国のミサイル巡洋艦ヨークタウンが大西洋で艦隊行動を行っていた際に起きた事件を例に挙げた。その時、海軍の技術者は燃料バルブを調整しており、艦上管理コンピュータの1つにゼロを入力した。すると、プログラムは入力されたゼロの値で別の数を割ろうとして(この解は数学では未定義となる)、ドカン!制御システム全体が完全にクラッシュしてしまい、海岸に曳航できるようになるまで、何時間も水上で立ち往生してしまったのだ。 この艦の管理システム全体が、設置前にはまったくテストされず、なんらかの形のテスト運用も行われなかったというのは考えにくいことだ。このシナリオは、「本当に?

                                                              • Junitでjavaの単体テストを作る - うめすこんぶ

                                                                javaのテストフレームワークであるjunit.使い方を少し学んだので書いておきます. eclipse (Kepler)ですと,標準で入っているので手間が無いですね. eclipseでのjunitの使い方 パッケージエクスプローラの中で,テストを行いたいクラスの書かれたソースをクリックして選択 右クリックで新規→その他 java→junit→junitテストケースを選択→次へ そのまま次へ テスト・メソッドの画面になる.使用可能なメソッドからテストを作りたいメソッドをチェックして完了 junit4がない問われたらOKで. 結果,テスト用のクラスが作られる. テストで使うクラス 今回テストするクラス: public class JunitExample { public JunitExample() { // TODO 自動生成されたコンストラクター・スタブ } public int foo

                                                                  Junitでjavaの単体テストを作る - うめすこんぶ
                                                                • 【書評】経験ゼロでもできるプログラミング現場の単体テスト - GoTheDistance

                                                                  BBQ和尚の同僚の方とは知らずタイトル買いした本ですが、タイトルに偽りなしです。とにかく平易で優しいわりにいちいち実践的で助かってます。最小の努力で結果が出るように配慮されています。 経験ゼロでもできるプログラミング現場の単体テスト 作者: 片桐一宗出版社/メーカー: 翔泳社発売日: 2009/05/29メディア: 単行本(ソフトカバー)購入: 11人 クリック: 564回この商品を含むブログ (26件) を見る この本を買ったきっかけは、とにかくデグレを無くしていい意味で手離れの良いコードを書いて楽がしたい、というもの。その為にはテストツールの使い方よりも、「どうやってテストコードを書けばある一定の品質が保てるのか」ということが書いてあるまとまった情報が欲しかった。で、本書をあたりました。 テストコードの書き方がわかっても、テストの内容が不十分であったりテストする単位が均質でなければ意味

                                                                    【書評】経験ゼロでもできるプログラミング現場の単体テスト - GoTheDistance
                                                                  • JUnit+Mockitoを使ったWebアプリケーションの単体テスト

                                                                    自動テストを導入することにより、テストケースの作り方を統一でき、網羅できます。全体を自動テストにできれば、変更部分以外の障害を防止できます。そして、テスト作業がコーディング作業になることによって、楽しくなるでしょう。実際のプロジェクトに導入するにあたってはいくつかの課題がありますが、自動テスト用のテストデータをあらかじめ用意しておくこと、DbUnit・Mockito・djUnitを使うことで解決できます。 対象読者 今回の対象読者は、下記のとおりです。 実際の開発プロジェクトへの自動テストの導入を検討されている方 JavaによるWebアプリケーション開発についての知識がある方 JUnitの基本的な知識がある方 必要な環境 JDK 7 Eclipse 4.3 Tomcat 7 自動テスト導入における課題 JUnitの使い方は簡単なので、試しに使ってみたという方は多いと思います。しかし実際に業

                                                                      JUnit+Mockitoを使ったWebアプリケーションの単体テスト
                                                                    • Evergreen で Rails アプリの JavaScript を単体テストする - present

                                                                      はじめに Rails アプリの JavaScript のテストは capybara(+capybara-webkit) を使えば一応できるけど、統合テストなのがね…。統合テストもちゃんと書くけど、やりたいのは JavaScript の単体テストなのに。 そこで Evergreen そんな中で最近知ったのが Evergreen っていう gem。 jnicklas/evergreen · GitHub こいつを簡単に説明すると、Rails に組み込める Jasmine テストランナー。Jasmine も同梱されてるので、インストールすればすぐに JavaScript のテストが書ける。 Evergreen のインストール Gemfile に group :test, :development do gem "evergreen", :require => "evergreen/rails"

                                                                        Evergreen で Rails アプリの JavaScript を単体テストする - present
                                                                      • ドキュメントベースの単体テストでxUnitを導入する前に考えて欲しいこと | Developers.IO

                                                                        ドキュメントベースの単体テスト ソフトウェア開発では、テストケースをExcel等で管理し、テストをテストフェイズで実施する方式(以下、ドキュメントベースの単体テスト)が行われてきました。 ドキュメントベースの単体テストでは、テストフェーズが明確に切られています。テストフェーズでは、テスト担当者がテストを実施し、結果をドキュメントに記録します。必要に応じてエビデンスも残すでしょう。もし、テストが失敗したならば、不具合管理票(バグ票)を起票します。そして、不具合の原因を分析し、仕様書やソースコードを修正します。不具合が修正されたならば、もう一度テストを実行し、不具合がなくなるまでこのサイクルを繰り返し、品質を高めていきます。 このようなドキュメントベースの単体テストは、機能や画面を対象としています。そして、ほとんどの場合は品質保証を目的としています。テスト件数や不具合件数、不具合の発生原因や修

                                                                          ドキュメントベースの単体テストでxUnitを導入する前に考えて欲しいこと | Developers.IO
                                                                        • Haskellの単体テスト最前線 - あどけない話

                                                                          この記事の最新版は、githubで管理されています。 これはHaskell Advent Calendar 2012の5日目の記事です。 Haskellで作成したパッケージに対して、単体テストを書くための最新情報をお届けします。 要約 要点は4つです。 利用者に見せたい振る舞いは、doctest で書く 利用者に見せたくない振る舞いは、hspec で書く テストを自動化するフレームワークとしては Cabal を使う doctest でも hspec でも、純粋なコードに対しては、できるだけ QuickCheck などの性質テストを書く この記事で一番伝えたいのは、3) です。例題としては、Base64 という符号化を取り上げます。Base64 は知っていると仮定して話を進めますので、知らない人はあらかじめ Wikipedia の Base64 の説明でも読んで下さい。 この記事で利用するコ

                                                                            Haskellの単体テスト最前線 - あどけない話
                                                                          • Ruby用単体テストフレームワークtest-unitでのデータ駆動テストの紹介 - 2013-01-23 - ククログ

                                                                            test-unitはRuby用のxUnit系の単体テストフレームワークです。2.3.1からデータ駆動テスト機能が追加されていたのですが、2.5.3まではリファレンスに記述がなく、知る人ぞ知る機能でした。 2013-01-23にリリースされた2.5.4ではデータ駆動テスト機能についてのドキュメントが追加されています。 データ駆動テスト自体の説明はUxUを用いたデータ駆動テストの記述を参照してください。 Cucumberのscenario outlinesに似ていると言えばピンと来る人もいるのではないでしょうか。 Cucumberのscenario outlinesも前述のククログ記事の通り、テストのデータとロジックを分離しているのでデータ駆動テストの一種と言えます。 今回は、データ駆動テストを導入した例を見ながらtest-unitでのデータ駆動テスト機能の使い方を紹介します。なお、以降の説明

                                                                              Ruby用単体テストフレームワークtest-unitでのデータ駆動テストの紹介 - 2013-01-23 - ククログ
                                                                            • Visual Studioで作る単体テスト、基本のき (VS2010向け改訂版)

                                                                              はじめに Visual Studioは2005の時から単体テスト機能を搭載するようになりました。2008のバージョンからは一般的な開発者が利用するProfessional Editionにもこの機能が搭載され、2010のバージョンでも同様となっています。本稿(および本シリーズ)では主に単体テスト機能にフォーカスしますが、開発者の利用シーンをキーワードに、いくつかのシナリオを想定して、その時々の使い方を取り扱っていきます。初回となる今回は、最も基本的ないくつかの点について見ていきましょう。 対象読者 .NET Frameworkを利用した開発プロジェクトに携わっている方 Visual Studioの単体テスト機能に興味がある方 必要な環境と準備 本稿で解説する内容を実際に試す場合には以下のいずれかのソフトウェアが必要になります。 Visual Studio 2010 Professional

                                                                                Visual Studioで作る単体テスト、基本のき (VS2010向け改訂版)
                                                                              • Google App Engine/Python で単体テスト - present

                                                                                Google App Engine SDK for Python には、単体テスト用に各サービスのスタブが提供されています。このスタブと unittest を使えば、ローカル環境で GAE 用アプリの単体テストが可能です。 GAE/Python で unittest を使って、単体テストを行うサンプルは次の通り。 #!/usr/bin/env python #encoding: utf-8 import os import sys # 環境設定 # これをしないと GAE のモジュールをインポートできない。 # テスト対象のクラスも同様。 # ここを自分の環境に合わせて書き変えます GAE_HOME = 'Google App Engine SDK ディレクトリのパス' PROJECT_HOME = 'アプリケーションのルートディレクトリのパス' # テストで使う GAE のモジュールのパ

                                                                                  Google App Engine/Python で単体テスト - present
                                                                                • 「単体テストの考え方/使い方」が主張するたった一つのこと

                                                                                  はじめに 読書会をやってみました オープンロジのエンジニアのrikuto(@riku929hr)です。 社内で「単体テストの考え方・使い方」というテストに関する有名な本の読書会を実施し、1回1時間、15回の開催を経て読み切りました。 原著は「Unit Testing Principles, Practices, and Patterns」で、Oreilly Learning Platformでも読むことができます。 400ページにもわたる本で、読み切るのには大変な手応えがありました。 たぶん読書会のようなものを開催しない限り、僕自身読みきれなかったかもしれません。 しかし読んでみると、著者が主張しているのはごくシンプルなことでした。 この記事のタイトル、ちょっと嘘ついてます タイトルには、「主張するたった一つのこと」としていますが、細かく言えば1つではありません。 この本が主張することはそ

                                                                                    「単体テストの考え方/使い方」が主張するたった一つのこと