2011/02/15

SpecFlow を使ってみた(Visual Studio で BDD w/ MSTest)

SpecFlow を使って BDD するまでのお話し。

今回は、VisualStudio 2010 で MSTest (VisualStudio についているもの)を使って
BDD するまでの話です。
NUnit は、また今度。

手順 1. SpecFlow をインストールします。
http://specflow.org/
の download に msi ファイルがあるので、ダウンロードします。

手順 2. BDD したいプロジェクトにテストプロジェクトを追加します。
MSTest を使うので、テストプロジェクト!

手順 3. テストプロジェクトに app.config を追加する。
app.config とは Application Configuration File ね。念のため。

手順 4. 手順 3 で追加した app.config に下記記述を追加する。

手順 5. Spec の DLL を参照に追加する。
DLL の場所 : C:\Program Files\TechTalk\SpecFlow
ここから、TechTalk.SpecFlow.dll, TechTalk.SpecFlow.Vs2010Integration.dll
を選択して、参照に追加します。

念のため、参照に追加する方法。
プロジェクトに Reference があるので、Add Reference をして、Brows で選ぶ。

手順 6. Feature ファイルを追加する。
プロジェクトで右クリックして、ファイルの追加から
[Visual C#/VB File] -> [SpecFlow Feature File] を選択する。


手順 7. 普通にテストを実行する。

以上です。


BDD についてとかは、記載途中の blog があるので、また今度。

2010/12/23

SkyDrive と ローカルドライブ( local drive ) と同期させる

SDExplorer の話

Sky Drive は Microsoft の 25GB のネットワークドライブ。
SaaS と言ってもいいかな。

Sky Drive へのアップロード API は、Microsoft からの認可が必要。
そのため、気軽にアプリケーションを作ることが出来ない。

そのため、このようなアプリの存在は貴重ですね。

2010/11/26

Web PI を使う

Windows で Wiki とか、ちまちまインストールしていられない 。
という訳で Web PI

正式名称「Microsoft Web Platform Installer」

アンインストールまでは面倒見てくれないけど、これでインストールは楽になる。
PHP の初心者には嬉しい状態となっている。

= インストールされる場所 =
PHP: C:\Program Files\PHP

= インストールできるもの(一例) =
  • PHP
  • Wordpress
  • ScrewTurn Wiki
= 注意 =

欲張って一回でいっぱいインストールの指示を出さないこと。
下記のように失敗することがあるため、残念さを少なくするためです。

=============
あと、これは私がインストールする際に起きたことなのだけど
PHP が一発でインストールできなかった。

一回で、インストールできなかったので
もう一度 Web PI を起動してPHPだけを選択して、インストール。

このように二回インストール作業をするとインストールできましたよ。
※URL Rewrite で引っかかった。
=============

Windows 7 上で画面キャプチャの方法 その1

Windows 7 で簡単に画面の操作を録画する方法

Expression Encoder (無料)を落としてくる
http://expression.microsoft.com/en-us/cc507507.aspx

Encoder は無料。
これ重要。

インストールすると、[Start] に [Microsoft Expression Encoder 4 Screencapture] がでてくる。
無料版は、Recording できる時間としては 10分が限界。
10 分あれば、十分じゃないかな?

その後、Encoder にてエンコーディング。
ここでは画像の切り貼りなどが簡単にできる。

Windows Live Essentials の Movie Maker を使っても良いと思う。

ま、Hyper-V 上だとすべての能力を発揮できなかったりするんだけどね。

2010/11/20

Git を Windows にインストールする

msysgit + tortoiseGit という構成にする。
cygwin は、単体でできるけど cygwin はすきじゃないので取り扱わない。

1. msysgitをインストール

msysgit : http://code.google.com/p/msysgit/
上記サイトから、Git-xxxx.exe をダウンロード & インストール

途中で聞かれる次の事項について
[Adjusting your PATH environment]
  コマンドプロンプトから使いたい人は真ん中を選べば良い。
  Path が追加される。
[Confuguring the line ending convesions]
  改行コードについて。

2. tortoisegit のインストール
tortoisegit : http://code.google.com/p/tortoisegit/

3. tortoisegit の設定
  右クリックから [Settings] を選択し [Git]->[Config] と進む。
  User Info に Name, Email を設定する。

4. tortoiseGit を使ったときに msysgit が見つからない場合

まず、msysgit を本当にインストールしたかの確認をする。

次に、適当な場所で右クリック [TortoiseGit] -> [Settings] を選択。
msysgit が正しくインストールされていないと怒られるので
[yes] を選択し、General から MSysGit の [Git.exe Path:] を
msysgit の場所を選択してあげる。


2010/09/27

Pythonでアジャイル開発サイクル 2010ver. 再演・感想

XP祭りの打ち上げで勢いダメもとで清水川さんに再演を依頼したところ快く引き受けていただきました。

清水川さんの発表された内容は、XP に基づいた「開発基盤コトハジメ」だと思います。
Scrum だと、とかく人間関係や、チームビルディングに話の中心が動いてしまいますが、こういった開発基盤が重要だと思っています。

Agile Day 2010 では、もともと「開発」<->「チーム」とブームが行ったり来たりしているというお話がありました。確かに、そういう傾向があり、XP では開発よりの実践的なプラクティスが数多く提案されています。

では、その揺り返しブーム「チーム」側である Scrum だと、XP で提言された開発プラクティスを実践しなくて良いか?というと、そうではないと考えています。むしろ、XP で提言された内容をベースとして、Scrum では開発を行う必要があると考えています。

Scrum を実行していくためには、
CI (Continuous Integration)
BTS (Bug Tracing System)
などが必要だと考えています。

なぜなら、Scrum の核は、進捗管理方法の変更だと思うからです。
個人的には、Lean も進捗管理の方法の変更だと考えています。
って、前置きが長いですね。この続きはどこかで…。

ま、そこで、清水川さんのプレゼンは、どうしたら良いか分からない、という方へのきっかけになるかと思っています。

最後の方で、すべての道具を使った時の俯瞰図が出ていますが、最初から全てのプラクティスを使用するのは不可能だと清水川さんは、仰っていました。
少しずつ使っていこう、と。

まずは、ソース管理とBTS 。
ソース管理は、初めてのプロジェクトに勧めるのなら、分散管理システムだそうです。
なぜなら、サーバーを立てる必要がないため、とのこと。
BTS は、ま、なんでもいいんじゃない?

2010/08/22

Agile 2010 とは何だったのか?に参加してきた

楽天さんで行われた「Agile 2010 とは何だったのか?」に参加してきました。

河口さんと チーム楽天の報告会です。
http://atnd.org/events/6946

一番印象に残ったのは「楽天のアジャイルへの本気度」でした。
一般的な会社で行われているような「アジャイルという名の行き当たりばったり」
ではなく、ちゃんとしたアジャイルを行っている感じを受けました。
ま、変な話ですが…。*1

樽本さんとも、話をさせていただいたのですが、
楽天は自社サービスなので、アジャイルを適用しやすい!
という事実も、後押しをしていると思います。

なぜなら、ドキュメントを作り、見える化を行い、振り返りを行っている。
また、有識者とのミーテイング をしたそうです。
そこで、改善点を複数洗い出し、次回に活かす施策を採っているようです。

大手企業で、このような開発手法が取り入れられ始めているというのは、
日本のIT業界にとっても、よろばしいことだと思います。
これは大きいところに取り入れられた手法が、小さい会社に向かって
流れていく傾向があると信じているからかな。

*1 そもそも、「ちゃんとしたアジャイル」という日本語はおかしい。
  アジャイルは、アジャイル宣言等があるだけなので、これをしなければいけない
  というモノはないと思います。
  どっちかっていうと「ちゃんとしたプロジェクト改善」かな…。