アジャイルでもWFでも共通する「開発やテストのモデル」-全てのソフトウェアテストを再定義する- #SWTestAdvent

はじめに

これはソフトウェアテストあどべんとかれんだー 2014 の17日目の記事です。

id:a-suenamiテストとは開発プロセスそのものである #SWTestAdvent - assertInstanceOf('Engineer', $a_suenami)で僕が考えているモデルについて紹介してくれていたので、ざっくりとですが僕の方から「現状の僕が捉えているソフトウェア開発。そしてテスト。」について紹介します。これはここ数年における僕の最高傑作とも言えるコンテンツに関するエントリです。(言いすぎだ

概要

言い過ぎればプロダクト開発というものは「Define, Build, Explore, Measure」という活動から成立していると言えます。これに知識や手法やプロセスをあてはめると「何をやるべきか」「何が足りていないか」がわかりやすくなります。この記事ではそういった開発やテストを話すときのベースとなるモデルを提案しています。

これに名前をつけてからになるけれど、これに関して講演や書籍執筆など、どんどんアウトプットできたらなーって思っています。ご興味ある方はご連絡いただければ嬉しいです。

kyon.mm at gmail.comまで。

続きを読む

Webアプリケーションのパフォーマンステストを勉強する方法 #SWTestAdvent

はじめに

これはソフトウェアテストあどべんとかれんだー 2014 の14日目の記事です。

明日は id:kokotatata さんです。

概要

パフォーマンステストを入門するための情報を紹介します。発端は@ryushi さんが次の記事でなにやら不思議な言及をされていたというところです。

正直に申し上げて負荷テストって恐ろしく難しい種類のテストなんですけども、特にその難しさについては書いていませんので、きっと名古屋辺りのうさぎさんが補足資料を提示してくれるでしょう。よろしくお願いします。

注意

ここにあるのはkyon_mmの私見です。なので、「なに、こいつ大げさだな。。。」とか思ったらコメントで「それはお前が勉強不足だからで、世のエンジニアの感覚と違います」とか書いてください。温度感重要です。

続きを読む

週刊ソフトウェアテスト 2014-50 #swtest_jp

前書き

ソフトウェアテストにまつわるニュースを週毎にお届けする記事です。内容はid:kyon_mmの独断と偏見です。オススメの記事があるときや、質問などなどはコメントや@kyon_mmにご連絡くださるとうれしいです。

ハッシュタグ #swtest_jp でソフトウェアテストに関する事をツイートしてくださるととてもうれしいです!(なにかの紹介でも、議論でも、質問でも!

kyon_mmの意見

id:pocketberserker, id:bleis-tiftなど弊社メンバーが中心に開発をすすめているF# のテスティングフレームワークにおいて「複数assertの結果を持つ(失敗しても次のassertを実行する)」という機能はすばらしいですね。ちなみにこのアイディア自体はAssertJにて「Soft Assert」という概念で実装されたのがテスティングフレームワークやライブラリとしては初めてだという認識です。AssertJの実装は結構アレなのですが、彼らの場合はよりスマートですね。テストのためにASTやコンパイラ技術や型システムは重要な位置を示しています。SpockもAST技術の権化みたいなところありますからね。

MSDNマガジンで「非同期プログラミングの単体テスト」の方法について解説されていました。なかなかこういった記事がまとまっていることはないので、とてもうれしいですね。重要なのは、こういったコードをレビューできる人間でないと、統合テスト以上で「非同期に対する十分なテストを設計できる」と言えないといったことではないでしょうか。もしくは「統合テストでは無理だから、単体テストでこのような設計をすべきだ」とするところですね。 これが「テストによる設計の変更」と言えるでしょう。

また、先週は「ソフトウェアテストの初級者向け合宿イベント」であるWACATEが開催されていました。本記事でもいくつかスライドを紹介させていただきました。半年に一度なので、次は来年の夏ですね。

続きを読む

テストをテストする方法-ミューテーションテスト- #gadvent

はじめに

これはG* Advent Calendarの12日目の記事です。今日はミューテーションテストについて書きます。明日はid:nobusue さんです。

概要

PITというツールの紹介です。「Javaプロダクトコードを機械的に変更してからテストを実行したときに、テストはそれを検知できるのか?」ということを調べてくれるツールで、SpockのテストやGradleからの実行に対応しています。

続きを読む

Geb 0.9.xの新機能紹介 #gadvent

はじめに

これはG* Advent Calendarの11日目の記事です。今日はGeb0.9系の新機能について書きます。明日はid:kyon_mm さんのGroovyでテストをテストする です。

概要

GebはWebアプリケーションのGUIテストライブラリで、Selenium WebDriverのGroovyラッパーになっています。 先日Geb 0.10の新機能は紹介したので、その前バージョンである0.9系で追加された機能を紹介します。ビルドツール連携やBrowserStack連携が強化されていますが、その紹介はまた別の機会に。

続きを読む

週刊ソフトウェアテスト 2014-49 #swtest_jp

前書き

ソフトウェアテストにまつわるニュースを週毎にお届けする記事です。内容はid:kyon_mmの独断と偏見です。オススメの記事があるときや、質問などなどはコメントや@kyon_mmにご連絡くださるとうれしいです。

ハッシュタグ #swtest_jp でソフトウェアテストに関する事をツイートしてくださるととてもうれしいです!(なにかの紹介でも、議論でも、質問でも!

kyon_mmの意見

ThoughtWorksToby Clemsonがマイクロサービスのテストに関してスライドを公開していました!見てみたのですが、普通の事を言っていてちょっと残念でした。。。最近、TEFというMLのなかで僕は「マイクロサービスはシステムテストを犠牲にする事で、ライブラリやミドルウェアのようにテストしにくいものをテストしやすく保つアーキテクチャだ」という意見を出しました。このスライドはそれに対するなんらかの回答が得られるものではありませんでした。ただ、マイクロサービスやテストレベルを全く理解できていない人にはとてもいい資料かなぁと思いました。

Rosie Sherryが「テスト業界における女性」についてブログを書いて、議論を巻き起こしていました。日本の開発者でも知っていると思われるリサ・クリスピン(実践アジャイルテストの著者)もコメントを書いていました。彼女はテスト業界は他のソフトウェア開発業界(開発やゲームなどなど)に比べて、女性が活き活きしていると思っているようです。ただし、それはテストがある意味でジェンダーを意識させるような女性らしさを活かしやすいというだけではなく、給与やテストというロール自体のヒエラレルキーなど、話は様々な要因があり、議論が起きているようでした。日本でもたしかに、テスト業界は開発に比べて女性の割合が高いように見えますね。難しい話題ですが、「コミットメントしたい人の多様性を広げる」という方向性はとても重要なので、日本でもこういった議論、そしてそれを拡大させる活動があるといいのかもしれませんね。

また、今週からソフトウェアテストあどべんとかれんだー2014が始まりました。まだ枠が余っているので、ぜひブログを投稿してみませんか?

続きを読む

Geb 0.10の新機能紹介 #gadvent

はじめに

これはG* Advent Calendarの5日目の記事です。今日はGeb0.10の新機能について書きます。明日はid:grimrose さんのRatpackについて です。

概要

GebはWebアプリケーションのGUIテストライブラリで、Selenium WebDriverのGroovyラッパーになっています。 最近Geb 0.10がリリースされたので、言語面における新機能を紹介します。ビルドツール連携やBrowserStack連携が強化されていますが、その紹介はまた別の機会に。

続きを読む