オープンソースCMS「DotNetNuke」のセットアップ
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
ブックマークされました!
ブックマークがエラーになりました。もう一度お願いします。
作者 Mike Bria , 翻訳者 近藤 修平 - (株)永和システムマネジメント 投稿日 2008年2月27日
テスト駆動開発(TDD:Test Driven Development)とビヘイビア駆動開発(BDD:Behaviour Driven Development)が抱えている問題の一つは、TDDやBDDの実践者たちが、単なるシステムの一部のインタラクション重視していていることであり、実際には「ユニットテスト」なっていないことです。彼らは、TDDとBDDというマントラに夢中になっているので、木を見るばかりで森を見ていません。単調なテストに陥っているのです。ユニットテストとは独立した個々のユニット、アプリケーションの中でテスト可能な最も小さい部分をテストするものです。WikipediaのBDDエントリ(source)にあった例を挙げ、Peter氏は彼の主張をうらずける事例として次のように述べている。
そのテストは42億9496万7296の可能性のうち、たった13ケースだけを詳しくテストしています。これらのテストは、特定のシステムにおいて期待された振る舞いについてはきちんとテストできているかもしれませんが、本当にEratosthenesPrimesCalculatorをユニットとして捉えた上でテストしているとは言えません。仮に、そのシステムが期待されたふるまいだけ許するシステムならば、これらのテストは、システムがきちんと動く証明になります。しかし、EratosthenesPrimesCalculatorが、何らかの状況で期待している振る舞い以外の使われ方をされるとしたら(本来クラスにコードをカプセル化するのは再利用が目的です)、EratosthenesPrimesCalculatorは充分に検証されたユニットであるとは言えません。Wikipediaの例では、EratosthenesPrimesCalculatorというユニットの実用性と正統性は、現実世界で「エラトステネスのふるい」という名前が示すアルゴリズムの示す性質に依存している。この点こそが、TDD実践者達が訴えようとしている「ユニットの実用性は、使われる環境(システム)というコンテクストがなければ定義できない」というものだ。言ってしまえば、こういったTDD/BDDの「用途」を明らかにしたいということが実践者たちの願いであり、彼らは、TDD/BDDの主な恩恵とはPeter氏が言うところの「インタラクションテスト」であると言っている。JMockの作者の一人であるSeteve Freeman氏(source)は次のように述べている。
その(インタラクションテストでテストファーストする)考え方では、あるオブジェクトの依存関係性を排除してしまいます。例えば、DAOをモックにすることがあると思いますが、DAOはアプリケーションドメインに属するものではなくて、実装ドメインの一部なのです。別の言い方をすると、TDD支持者の人の多くは、そもそもユニットテストを書くことの目的は、ユニットが何をすべきで何をすべきでないのかという明快に仕様化することだ、と主張するだろう。Mario Gleichmann氏による、TDDと契約による設計(Design By Contract)を比較している記事(source)で、次のように述べている。
よく「ユニットは、そのコンテクストによって定義される」と言われるが、ユニットテストはその名が示すように、システムの全体としての品質であったり使い道の指針を提供するわけではなく、開発中においては充分なレベルの受け入れテスト(source)が伴っている必要がある、ということを思い出すべきだ。JS Greenwood氏(source)は次のように述べている。テスト駆動開発(TDD)における手段としてのユニットテストの意味合いは、実装の正しさを検証することより、むしろユニットがどのように振る舞うべきか、という仕様を検証するものです。実際、TDDにおけるテストは(検証ではなく)仕様であり、開発を駆動していくものです。高まりつつあるビヘイビア駆動開発(BDD)に、こういった核となる考え方への回帰をみることができます。BDDとは簡潔で自然な方法で仕様(もちろん自動的な検証が可能な)を記述できる適切な語彙を探そうとする試みであり、コンポーネントがある特定の状況下でどのように振る舞うかに再び焦点をあてるものなのです。
不十分な結合テスト、つまり全てが分離してテストされている状態です。- 構成要素がの境界が明確であり、分離されていいて、充分にテストされていて、そして適切な状態にあるシステムとして完了させることはできます。しかし、分離したユニットテストは、結合テストで補完されてない限り、どのような組み合わせであろうとグレー(というか黒に近い)な領域なのです。原文はこちらです:http://www.infoq.com/news/2008/02/unit_tests_forests_n_trees
前回はMicrosoft Web Platform Installerを利用して、DotNetNukeとWebMatrixをインストールする方法を紹介した。今回は、DotNetNukeのインストール方法を紹介する。
DotNetNukeは、Windows Serverで動作するCMS(Contents Management System)である。この記事ではWeb Platform Installer を利用して人気CMS「DotNetNuke」と無償Web開発環境「WebMatrix」のインストールする方法を紹介する。
クラウドコンピューティングを前提とした大規模データ技術が利用可能となってきています。Big Dataが一過性のブームで終わるかどうかにかかわらず、スケーラブルな分散アーキテクチャーの基盤はデータベース技術に主導されつつあります。RDBとORM主体のエンタープライズシステムは、HadoopやNoSQLとの組み合わせにより複合的なデータモデルに発展しました。
2011年12月8日~2011年12月9日に、ロンドンのSkills Matter eXchangeにて開催された「Groovy & Grails eXchange 2011」の参加報告を、日本Grails/Groovyユーザーグループのメンバーが3回に渡って紹介します。
Googleのクラウド環境をつかったGoogle App Engineによる開発するにあたり、初めての試みで苦悩する開発者達の経験をもとに、各開発フェーズにあわせて問題点やどう解決したかをご紹介します
去る1月12日、定理証明支援系ツールCoqの初心者向けチュートリアルが開催さ れた(http://kokucheese.com/event/index/23667/)。今後も2月2日 (http://kokucheese.com/event/index/23744/)、2月9日、2月16日と引き続���開 催されていく予定である。本記事では、開催の様子をレポートする。
Neal Gafter氏はOracleによるJava買収の影響に関する議論、Javaにセグメンテッドスタックやメタオブジェクトプロトコルを追加することについての主張、そしてJavaとC#との比較について話をしてくれた。
No comments
スレッド表示 返信