Infrataster(インフラテイスター)。テスト自動化ツールです。構築したサーバに対して外部からサービス利用者に近い視点から振る舞いのテストを行えます。

Infratasterとは

Infrataster(インフラテイスター)。テスト自動化ツールです。構築したサーバに対して外部からサービス利用者に近い視点から振る舞いのテストを行えます。

基本情報

概要

Infrataster(インフラテイスター)とは、テスト自動化ツールです。構築したサーバに対して外部からサービス利用者に近い視点から振る舞いのテストを行えます。

基本説明

Infratasterは、インフラの振る舞いをテストするフレームワークです。

サーバ上のサービスへのアクセス/ネットワーク通信などの自動テストを行います。

経緯

Infratasterは、クックパッドの荒井良太氏が開発したツールです。

「Infrataster」の名称は、「infraのtester(テスト実施者)」ではなく「infraのtaster(味見役/毒見役)」という意味です。

TOPに戻る

主な特徴

サーバ外部からのテスト

同様の自動テストツールとして「Serverspec」があります。Serverspecは「サーバ内部のテスト」(ホワイトボックステスト)を実施するツールです。サーバ内部のミドルウェアやファイルに対するテストを行います。

それに対して、Infratasterは「サーバ外部からのテスト」(ブラックボックステスト)を実施します。Infratasterは、外部から(実際のクライアントから)テストを行います。Infratasterでのテストの場合、サーバ内部で動作しているミドルウェア種類などは関係なく、外部から見てどのような振る舞いをするかを検証します。そのため、結合テストフェーズに適しています。

「Serverspec」と「Infrataster」は、競合するものではなく補完関係にあります。両者を併用して、ホワイトボックステスト+ブラックボックステストを行えば、より堅牢なインフラ構築を目指せます。

基本的なテスト内容

基本的には、対象のサーバに対して、特定のヘッダ付きHTTPリクエストを送信して、期待通りのレスポンスが返却されるかを確認できます。

MySQLの「SHOW VARIABLES」の結果を取得して確認できます。

テストフレームワーク「capybara」を使用して、実際にユーザがそのWebアプリケーションを使用しているかのように、さまざまなページに遷移して、不具合がないかをチェックできます。

プラグイン

プラグインを追加することにより拡張できます。主なプラグインとして、以下のようなものがあります。
・infrataster-plugin-chef
・infrataster-plugin-dns
・infrataster-plugin-firewall
・infrataster-plugin-ldap
・infrataster-plugin-memcached
・infrataster-plugin-mysql
・infrataster-plugin-pgsql
・infrataster-plugin-redis
・infrataster-plugin-ssl_certificates

テストスクリプト制御

テストスクリプトの制御には、Rubyのテストフレームワーク「RSpec」を使用します。

Infratasterは「RSpec」のテストヘルパとして機能します。英語の文章を書くようにテスト内容を記述して、期待された動作が行われるかどうかをテストします。

エビデンス出力

テスト結果が出力されるため、証跡として十分に活用できます。

TOPに戻る

同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Serverspec」など。

TOPに戻る

ライセンス情報

Infratasterのライセンスは「MIT License」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

TOPに戻る

ダウンロード

ダウンロードページ

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

Infrataster最新TOPICS

最新情報はありません。

Infrataster最新CLOSEUPコラム

  • オープソース書籍(サイド)

OSS×Cloud ACCESS RANKING

  • OSSNEWSに広告を掲載しませんか?

facebook

twitter