NDS#24で発表してミタ

NDS

思ったより反応があったので、満足です。 次回は他のネタでも発表してみたいと思いまーす。 Nds#24 単体テスト View more presentations from Kazumune Katagiri

checkboxをチェック状態にする時の注意点

お陰様でjQueryのせいでhtml以外でUIを書きたくありません。さて、jQueryでcheckboxをチェック状態にするには、 $("input[type='checkbox'][name='checkboxName']").val(['001','002']); のように、1行で書けてしまいます。val()の中には配列を設定すること…

Selectorsって便利だけど

jQueryを使う上でSelectorsは避けて通れません。これに合致する奴にイベント設定や、css付与することができ、パズルみたいでちょっと楽しかったりします。 で、今回こんな構成でaタグにクリックイベントを追加しようと思いました。 <table id="table1"> <tr> <td><a href="javascript:void(0)">AAA</a></td> <td>あいうえお</td> </tr> <tr> <td><a href="javascript:void(0)">BBB</a></td> <td></td></tr></table>…

イマドキのWebシステムに向けて

最近のWebシステムは、クライアント依存しづらくしなきゃだめよねー、ということで、サーバサイドにはJava、クライアントはJSON+JavaScriptでレンダリングという構成でシステム構築を考えております。そんな中で気づいた事をメモっとこうかなぁ、と。 なんで…

そろそろ

落ち着いてきたのでいろいろ書きはじめたいと思いまーす

小悪魔女子大生のサーバーエンジニア日記

読みました。後輩クンからのありがたいプレゼントを使って購入。小悪魔女子大生のサーバエンジニア日記 ――インターネットやサーバのしくみが楽しくわかる作者: aico,株式会社ディレクターズ,村井純出版社/メーカー: 技術評論社発売日: 2011/01/27メディア: …

くやしいと思ったその後に

「仕事で『くやしい』と思ったことの無い人は恐ろしいほど仕事が順調か、目標が低い人だ」みたいなことをつぶやきで見ました。まったくその通りだと思います。 ただ「くやしい」と思うだけでは成長しません。その後どうするか、ということが大事だと私は思う…

負荷テストの準備

負荷テストは、ある程度の規模でのシステム開発では避けて通れない工程です。これを疎かにすると、同時アクセスが増えた時やテーブルにデータが溜まった時に思うような時間でレスポンスが帰ってこないことになりかねません。擬似的に同時アクセスをかけたり…

年明け一発目がこれって・・・

でも、MacBook Air 11インチ欲しい! 持ち運んで勉強するにはいいサイズですよね。当たったら、その勢いでdocomoのモバイルwifiルータ契約しちゃおう。

上流工程でステークホルダーの要求がまとまる技術

上流工程でステークホルダーの要求がまとまる技術 (エンジニア道場)作者: 大川敏彦出版社/メーカー: 翔泳社発売日: 2010/10/08メディア: 単行本(ソフトカバー)購入: 2人 クリック: 35回この商品を含むブログ (2件) を見る オビに「要求はわかるけど、全部…

機能テストの自動化に向けて

前回は、ツールを使っても機能テストを自動化するハードルは低くないですよ、ということを書きました。 残念ながら、高いお金を払って購入したテストツールもスケジュールが間に合わない現場の品質担保の救世主にはなりえません。やっぱりロジック部分の単体…

きちんと準備しなきゃ機能テストツールを使ったってテスト自動化は楽になりませんよ

Javaで作られたWebアプリケーションをテストする際に、MVCモデルで言うところの、「M」部分はJUnitでテストクラスを作成して、継続的にテストし続けると幸せになれるよ、というのは一般的になってきていると思います。「V」「C」部分もMockフレームワークを…

べ、別にSQLが理解できないわけじゃないんだからねッ!

私が携わるプロジェクトでは、 極力SQLでビジネスロジックを書くことを回避してもらってます。 理由は、SQLでロジック書かれると、 JavaとSQLでロジックが分散してしまうからです*1。 SQLだろうが、Javaだろうが、 訳のわからないロジックを書けてしまう事は…

テストの課題

一緒に仕事をしてもらうパートナーさんの面談をする時に 大体私は簡単なJavaのソースコードとテストクラスを書いてもらってます。*1 お題は1から100までの数値に対する「Fizz Buzz」で 標準出力に結果を出力する処理をテストクラスと一緒に書いて、というも…

RDBMSに関するテスト

単体テストにおいてDAO*1周りは、世の中の風潮として、 「テストがすぐに終わらないからその部分はMockで代替」 とされてしまうことが多いと思います。 たしかに重要なのは永続化することではなく、永続化する為のデータを作る ビジネスロジック部分であるこ…

こと単体テストに至っては部分最適を求めていいと思う

例えば、DBに格納されているデータを引っ張り出して ゴニョゴニョ計算する処理があったとします。 さて、皆さんはこの処理の単体テストを書くとしたら どうしますか? DBアクセス部分と計算部分を1つのロジックと見なし、 一気にテストしちゃいます? 確かに…

第10回 xUnit Test Patterns 読書会に参加してきた

参加してきましたー。 仕事に絡まない人たちとテストについて話をする機会が無いので 今回のような勉強会はやっぱり刺激がありました。 忘れちゃいけないのは 最終的に作らなければならないのは 動くアプリケーション*1であり、 その構成要素であるソースコ…

「IPサイマルラジオ」実用化試験

これはいい。 radiko.jpIPアドレスで住所を判別するでしょうから Androidできちんと聞けるか分かりませんが マンションでラジオが聞けるのはうれしいことこの上なし。 3/15からかー。

xUTP読書会に向けて

xUnit Test Patterns 読書会に参加するのに、本が無いと駄目ですよねー。洋書だけど勇気を出して購入。 xUnit Test Patterns: Refactoring Test Code (Addison-Wesley Signature Series (Fowler))作者: Gerard Meszaros出版社/メーカー: Addison-Wesley Prof…

アジャイルと請負契約

ござ先輩が興味深いエントリーを書いていました。 アジャイルって受託開発との相性が最悪な気がする - GoTheDistance ちょうどそんな感じの問題にぶち当たっているので、私も書いてみよう。 アジャイルを採用する上でのメリット/デメリット 顧客側(システム…

GAE + RDBが使える・・・のか?

最近書けてません。 体調的なものとネタがないことが原因なのですが・・・。 そんな中、以下の記事を見つけました。 Google App Engine上でLL+RDBアプリを作ろう - @IT ビジネスに使えるかは未知数ですが、とても興味深い。 RDBのように簡単にトランザクシ…

自分の情報は自分で守らなければならないのはわかっちゃいるけれど

Androidアプリで、Google連携しますよーなんて時にGoogleへのログイン情報が必要です。 アプリを使う人は、(アプリ側に保存するかどうかはさておき)ログイン情報を入力するわけですが。 そのアプリが、『入力された情報を「本当にGoogleのサイト」に認証情報…

Activity間のデータのやり取り

通常、Activity間のデータのやり取りはIntentを使いますが、 面倒な場合、staticなフィールドに突っ込んでしまいます。 Webアプリケーションと違って、そうそう問題にはなりにくいのですが お世辞にも保守性が良いとは言えません。 Androidから戻るボタンを…

独習単体テスト

私は、テストで重要なのはカバレッジでなく、 「こうあるべき」と定義したAssertionであると思っています。 さらに言うと、データ/状態/操作の組み合わせパターンを変えて、 さまざまなAssertionのパターンを定義できる*1人が テストのスキルを持っていると…

非Webブラウザアプリの単体テスト

ここしばらくAndroidアプリと戯れていたのですが、 概念として外せないのがThreadクラスとListenerクラス。 時間のかかる処理を裏で実行しながら「しばらくお待ち下さい」を画面上に表示する時なんかは 別Threadを立て、時間のかかる処理をそちらで実行させ…

Dateオブジェクトの日付指定

Dateオブジェクトは、「1970/01/01 00:00:00」が最小値だと思っていたのですが、 そんなこと無いんですね。java.util.Date#getTime()のJavaDocに Date オブジェクトで表される、1970 年 1 月 1 日 00:00:00 GMT からのミリ秒数を返します。 と記述されている…

Androidアプリの必要性

Androidアプリなんかいらない。 フルブラウザがあるんだからそれ使って Webアプリ見れば良いじゃん、お金を取れるアプリなんて無いよーと思っていました。 ですが、よくよく考えてみると、Androidの画面は狭い。 PC上であればスクロールせずに画面内に収まる…

事業仕分を横目にシステムにかかるコストについて考えてみた

システムに対する評価についてゆうすけさんが書いてました。 本当にそのシステムは止まってはいけないのか (arclamp.jp アークランプ) 止まらないことが目的になってしまうことで,システムに対する適切な評価ができていないと感じることがある。 確かに。多…

良い道具を持っているだけじゃビジネスチャンスに繋げない

仕事以外の時間を使って、Androidアプリを作ってました。 ウチの会社のメールはgmailなのですが、その認証にクライアント証明書が必要でして。 Androidデフォルトブラウザだとクライアント証明書を使ってhttpsアクセスができないようなので じゃー見れるよう…

空気を読みすぎるOracle

Oracleのvarcharカラムに0埋めの数字文字列しか設定されていない、と判っている場合 こんな感じで比較文が書けます。 select count(*) from dual where '000002' = 2 すげぇ、Oracle空気読みすぎ。 ' 000002 ' みたいに、前後に半角SPがあっても大丈夫。 た…