XUnitとは何? わかりやすく解説 Weblio辞書 (original) (raw)

(XUnit から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2010/04/01 07:46 UTC 版)

X線単位
記号 xu
非SI単位
長さ
SI 約 100.21 fm
定義 18℃の方解石の(200)面の格子間隔の1/3029.04
・話・

X線単位(エックスせんたんい、X-unit, 記号:xu)は、かつてX線ガンマ線波長の計測に使用されていた長さ単位である。約 100.21 フェムトメートルに相当する。1925年スウェーデンの物理学者マンネ・シーグバーンによって定義されたもので、この単位はシーグバーンとも呼ばれる。X単位ともいう。

X線単位は、X線の波長の測定装置で使われる方解石結晶の格子間隔に基づいて定義したものであるが、実際にその長さを測定することは当時はできなかった。シーグバーンは結晶の密度とアボガドロ数から、摂氏18度の方解石の(200)面の格子間隔を計算し、1000分の1オングストローム(Å)(100フェムトメートル)に相当する値として格子間隔の3029.04分の1をX線単位と定めた。実際には、アボガドロ数の誤差などにより100フェムトメートルよりもわずかに大きい値となっている。

銅X線単位(記号: xu(CuKα1))はのKα1輝線の波長として定義されたもので、正確に1537.400 xuであり、その値は 1.00207789×10-13 ± 7.0×10-20 メートルである。同様に、モリブデンX線単位(記号: **xu(MoKα1)**)はモリブデンのKα1輝線の波長として定義されたもので、正確に707.831 xuであり、その長さは 1.00209938×10-13 ± 4.5×10-20 メートルである。

xUnitとは、コンピュータプログラム単体テスト(ユニットテスト)を行うためのテスティングフレームワークの総称である。これらのフレームワークでは、関数やクラスなど、ソフトウェアの様々な要素(ユニット)をテストすることができる。xUnitフレームワークの主な利点は、テストを自動化できること、同じテストを何度も書かずに済むこと、個々のテストの結果がどうあるべきかを覚えておかなくても良いことである。

このようなフレームワークの最初の実装は、ケント・ベックが開発したSmalltalk用のテスティングフレームワーク**SUnit**である。その後、各コンピュータプログラム言語や開発環境毎に、同様の設計を持つフレームワークが多数作成されている。xUnitそれ自体は非常に単純なプログラムであるが、近年のソフトウェア開発で採用されつつある。JUnitJava用のxUnit)の項目も参照。

アジャイルソフトウェア開発エクストリーム・プログラミングなど)においては、リファクタリングテストファースト等の前提となる重要な要素である。

xUnitの設計

xUnitフレームワークの設計上の特徴は、いくつかの部分に分けられる。言い換えると、以下の特徴をすべて持つテストフレームワークはxUnitフレームワークの一種であるといえる。

テストフィクスチャ

テストを実行、成功させるために必要な状態や前提条件の集合を、フィクスチャ(英語版)と呼ぶ。これらはテストコンテキストとも呼ばれる。開発者はテストの実行前にテストに適した状態を整え、テスト実行後に元の状態を復元することが望ましい。

テストスイート

同じフィクスチャを共有するテストの集合を、テストスイートと呼ぶ。テストスイート内のそれぞれのテストの実行順序は保証されない。

テストの実行

個々のユニットテストは以下のような流れで実行される。

setup(); /* 最初に、テストのためのクリーンな 環境(設定など)を用意する。 / ... / テストの本体。ここですべてのテストを行う。 / ... teardown(); / 最後は、テストが成功したか失敗したかに関わらず、 他のテストやプログラムに影響を与えないよう、 初めに用意したテスト用の環境を元に戻す。 */

setup() と teardown() の各メソッドは、テストフィクスチャの初期化とクリーンアップを行うためのものである。

アサーション(表明、検証)

テスト対象の関数やクラスなどについて、振る舞いや状態を確認するための関数やマクロを、アサーションと呼ぶ。アサーションが失敗した時(実際の実行結果が期待される結果と異なっていた場合)は、一般的には、例外が投げられ現在のテストの実行は中断される。

xUnitの一覧

関連項目

脚注

  1. ^ Test::UnitとしてRuby1.8の標準添付ライブラリに統廃合された。

外部リンク

  1. ^ Camp Smalltalk SUnit
  2. ^ CUnit Home
  3. ^ a b C言語・C++言語用テスティングフレームワーク - Cutter
  4. ^ CppUnit - C++ port of JUnit download | SourceForge.net
  5. ^ DUNIT: An Xtreme testing framework for Delphi programs
  6. ^ PerlUnit: unit testing framework for Perl
  7. ^ PyUnit - the standard unit testing framework for Python
  8. ^ GitHub - nose-devs/nose: nose is nicer testing for python
  9. ^ RubyUnit(Japanese)
  10. ^ test-unit - a Unit Testing Framework for Ruby
  11. ^ NUnit.org
  12. ^ Home > xUnit.net
  13. ^ TclUnit download | SourceForge.net
  14. ^ HUnit -- Haskell Unit Testing
  15. ^ GitHub - gildor478/ounit
  16. ^ PHPUnit – The PHP Testing Framework
  17. ^ JSUnit.net – Java Script Testing Tool
  18. ^ Home - Mochikit.com
  19. ^ HttpUnit Home
  20. ^ HtmlUnit – Welcome to HtmlUnit