タグ

ブックマーク / kyon-mm.hatenablog.com (14)

  • Spock1.1の新機能紹介 - うさぎ組

    SpockというGroovy言語で記述するテスティングフレームワークがあります。 今回は2017/05/01にリリースされたバージョン1.1の新機能のうち3つを紹介します。 Spock リリースノート 記事はG* Advent Calendar 2017の14日目です。 verifyAll メソッドによる(Soft Assert) where句のデータテーブルで左側の値を参照できる @PendingFeatureで未実装機能マーカーでテストを実行しない その他 verifyAll メソッドによる(Soft Assert) いろんな界隈で流行ってきているSoft AssertがついにSpockにも来ました。Integration Testにおいてはテストスクリプトもしくはライブラリ内で有用になる場面が多いこの機能。 Soft Assertというのは総称で、「複数の検査(assert)をグル

    Spock1.1の新機能紹介 - うさぎ組
    uehaj
    uehaj 2017/12/14
    便利っぽい
  • お気に入りの生産性あげるための工夫(アプリとかブラウザ拡張とか) - うさぎ組

    オススメのものを列挙するよー。 1日の過ごし方 大切にしているコンセプトは「もっているものを最大に使いこなす」ということで、手を使える時間はプログラミングとか、たまにしか手を使えない時間は電子書籍か動画、耳しか使えない時間は音声ってつかいわけています。なので、手が空いているときはできるだけものを作るようにシフトして生活している。 起床したら気になる記事をInoReaderとかはてなブックマークから検索して、Pocketに共有。 シャワーあびたり身支度する時間、通勤で歩いている時間、などはPocketで共有した記事を音声読み上げで聞く。 音声読み上げできなかった記事は、空き時間に目視で確認。(大抵は業務時間の隙間とか) 気になったソースコードはPCChromeでSourcegraph for GitHubを使って確認して、必要そうだったらcloneする。 手が動かせる時間ができたら、いろん

    お気に入りの生産性あげるための工夫(アプリとかブラウザ拡張とか) - うさぎ組
    uehaj
    uehaj 2017/07/04
  • Hacker Tackleでアジャイルテストにおけるアンチパターンについて講演しました。 #hackt - うさぎ組

    3行まとめ Hacker Tackleっていう激熱なITデベロッパー向けのイベントで「アジャイルテスト」について講演しました。 みなさんがつらいのはわかるけど、解決したいなら気で取り組む必要があるので、参考になれば幸いです。 あと、アジャイルにテストしている人達といろいろ議論したいです。 Hacker Tackleとはなにか hackertackle.github.io HackerTackleは、プログラマのための総合技術イベントです。 「ハッカー・タックル/博多・来る」の意味を持つイベント名には、多くのハッカーが博多に来て、さまざまな議論をぶつけあう場になればという思いがこめられています。 イマのプログラマにとって必要な知識を切り取った、さまざまな技術に関するセッションを用意しています。 ぜひ博多に来て、新しい技術を吸収し、議論をぶつけあってみませんか? なんかMMA感がありますが、

    Hacker Tackleでアジャイルテストにおけるアンチパターンについて講演しました。 #hackt - うさぎ組
    uehaj
    uehaj 2016/09/16
  • テストをテストする方法-ミューテーションテスト- #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの12日目の記事です。今日はミューテーションテストについて書きます。明日はid:nobusue さんです。 概要 PITというツールの紹介です。「Javaプロダクトコードを機械的に変更してからテストを実行したときに、テストはそれを検知できるのか?」ということを調べてくれるツールで、SpockのテストやGradleからの実行に対応しています。 ミューテーションテスト ミューテーションテストとはざっくりと言えば「プロダクトコードを変更したなら、その振る舞いも変わるはず。テストはその変更された振る舞いを網羅できているかを調べる」というテストです。 対象規模が小さければ手動で毎回やってもいいわけですけど、ツール化されていると楽なことこの上ないです。ということで、今回はJavaプロダクトコードをミューテートするライブラリであるPITについて紹介しま

    テストをテストする方法-ミューテーションテスト- #gadvent - うさぎ組
    uehaj
    uehaj 2014/12/16
  • Spock1.0でBDDとレポートが進化している! #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの2日目の記事です。今日はSpockの新機能について書きます。明日はRyotaMurohoshi さんの「初心者でも】やろうぜGroovy!〜Web APIたたいたり、レスポンスの中身確認したり、データを保存したり〜編【今すぐ使える】」です。 概要 2014/12現在、最高のユニットテスティングフレームワークであるSpockの次のメジャーバージョンである1.0の機能を紹介します。 BDDを強力にすすめるためのアノテーションと、最高にクールなテストレポーターが実装されました。個人的には当に当に素晴らしいリリースです。 はやくこい!!!!! サンプルプロジェクト サンプルプロジェクトをこちらにあげておきました。参考にしてみてください。 gradle testReportやgradlew testReportとしてみてください。テストが実行

    Spock1.0でBDDとレポートが進化している! #gadvent - うさぎ組
    uehaj
    uehaj 2014/12/12
    "これを見よ!!動的に操作できるHTMLレポーターだ!"
  • IntelliJ IDEA14をインストールしたら設定すること(Groovy編) #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの4日目の記事です。今日はSpockの新機能について書きます。明日はid:kyon_mm さんのGeb 0.10の新機能について です。 概要 以前にIntelliJ IDEA 13で書いた「IntelliJ + Groovyでテストコードを書く毎日ですが、これらを設定しないと仕事にならない系ものをまとめてみました。」というやつをアップデートします。内容は変わっておらず、IntelliJ IDEA14のUIに合わせたという感じです。 各項目の「keyword」にあるものをIntelliJのメニューバーにあるHelp -> Find Actionで出てくる検索ボックスにいれると「この設定だよね?」って検索結果がでるので、それをクリックすれば一発で有効になります。また、Settingsでkeywordを入力するとそれっぽいものがフィルタリング

    IntelliJ IDEA14をインストールしたら設定すること(Groovy編) #gadvent - うさぎ組
    uehaj
    uehaj 2014/12/12
  • Geb 0.10の新機能紹介 #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの5日目の記事です。今日はGeb0.10の新機能について書きます。明日はid:grimrose さんのRatpackについて です。 概要 GebはWebアプリケーションのGUIテストライブラリで、Selenium WebDriverのGroovyラッパーになっています。 最近Geb 0.10がリリースされたので、言語面における新機能を紹介します。ビルドツール連携やBrowserStack連携が強化されていますが、その紹介はまた別の機会に。 Geb 0.10の新機能 CSSへのアクセスが容易になった 兄弟要素や子要素へのアクセスが容易になった クリック後に非同期処理が実行されるオブジェクトにwaitを指定できるようになった CSSへのアクセスが容易になった PageObjectだったり、直接取得したようなNavigator(いわゆるDOM

    Geb 0.10の新機能紹介 #gadvent - うさぎ組
    uehaj
    uehaj 2014/12/12
  • Gradleを入門する方法から更に知る方法まで #gadvent - うさぎ組

    はじめに これはG* Advent Calendarの1日目の記事です。今日はGradleの勉強方法について書きます。明日はid:kyon_mm さんの「Spock1.0でBDDする」です。 概要 GradleというGroovy製のビルドツールが最近人気になってきていますが、なにを参考に勉強するのがよいのかをここで示します。社内で広めるときの参考にしていただければ幸いです。 全体のステップ おそらく多くの人にとっての入門のステップとしては次がよいかと思われます。 Gradle徹底入門 Gradleユーザーガイド(日語あり) Gradleのsamplesディレクトリのサンプルプロジェクト 各種ブログなど Gradle Forum(英語) Gradle DSL Reference(日語あり) 各種プラグインのSource Code Gradle体のSource Code まずはまとまった

    Gradleを入門する方法から更に知る方法まで #gadvent - うさぎ組
  • HerokuでGrailsを使うとクエリパラメータが文字化けするのでbuildpack直しました。 - うさぎ組

    TL;DR HerokuではGrailsを簡単に(普通のGrailsプロジェクトをgit pushするだけで)デプロイすることができます。ですが、(少なくともHerokuがデフォルトで使う)Tomcat7ではクエリパラメータが文字化けします。Grailsで使うTomcat7のクエリパラメータをUTF-8でエンコードするようにするビルドパックをつくりました。(フォークして一行変えただけだけど) 問題 ローカルでGrailsを使って開発しているときには気づかなかったのですが、Herokuにデプロイするとクエリパラメータに日語を使うとめっちゃ化けてしまいました。もうTomcatのことなんてすっかりわすれていたので、原因調査にめっちゃ時間かかりました。。。 それに付随していろいろわかったのでまとめておきます。 調査方針 次の方針で調査しました。結果としては最後の他の何かで、それはTomcatの設

    HerokuでGrailsを使うとクエリパラメータが文字化けするのでbuildpack直しました。 - うさぎ組
    uehaj
    uehaj 2014/10/14
  • コードカバレッジで見落とされがちだと思う事 - うさぎ組

    はじめに みなさんがいろいろ言いたい事はあるだろうから、むしろみなさんの意見を聞きたい。はてなブックマークのコメントとかではなく、直接このブログのコメントか引用した自身のブログで書いてくれれば幸いだ。 コードカバレッジ 日語で20冊くらい書籍がでているようなプログラミング言語で、しかもテスティングフレームワークについても紹介されているような言語であれば、最近ではだいたいは「テストコードの実行によって実行されたプロダクトコードのパスカバレッジを計測するツール」であるところのコードカバレッジツールはあるでしょう。 JavaであればJaCoCoというツールがありますし、最近だとCoverallsというサービスもありますね。 どれくらいだといいのか? コードカバレッジがバグ検出と強い因果関係にはなさそうであるというのが、自分の周りで聞く事が多くなりました。また、先日そういった論文も発表されたよう

    コードカバレッジで見落とされがちだと思う事 - うさぎ組
    uehaj
    uehaj 2014/07/29
  • Groovyは衰退しました #gadvent2012 - うさぎ組

    G* Advent Calendarの9日目になります。 G* Advent Calendar 2012 : ATND 前はid:touchez_du_bois さんのAST変換の無駄使い - とある技術の謹書目録です。 次はid:fumokmm さんです。 マニアックな話を書きます。とATNDに書いたのですが、高度とかではなくてですね。誰も書かなさそうなものをちょこっとかいてみようかなぁと。 タイトルに特に意味はない。という元ネタすら知らないです。(おい あ、以下の文章はGroovyをdisっているように見えるかもしれません。disっているので気にしないでください。Advent CalendarでまさかのGroovyDis。。。 でも、僕はGroovy当に大好きです。 I Love Groovy!! Groovyの静的コンパイルがイケてない Groovyは2.0になり静的コンパイルがで

    Groovyは衰退しました #gadvent2012 - うさぎ組
    uehaj
    uehaj 2012/12/09
  • #TDDBC 大阪でGroovyを最大勢力にしてきました。 - うさぎ組

    Groovy/SpockなTDDBC 6/2, 6/3にTDDBootCamp 大阪1.0, 2.0があったのでGroovyのTAとして参加してきました。 両日ともに当初(イベント開始時点)ではGroovy希望者が1名でしたが、 1.0では6名に、2.0では言語希望者最大となる11名(ペアの都合上、後に10名に減る)の方達にGroovyでのTDDを体験してもらえました。 テストコードだけGroovyでいいし、Javaと同じように書いていい これだけGroovyの希望者が増えたのは、Javaの希望者がGroovyに流れた事によります。 また、僕は今回Groovyを体験してもらうにあたって、 「テストコードだけをGroovyにするだけでもいける。わからなくてもJavaと同じように書けば動くし、とりあえずGroovyでやってみても大丈夫ですよ。」 と宣伝しました。 1.0では6人中4人にSpoc

    uehaj
    uehaj 2012/06/05
  • JavaOneTokyoでGroovy+AndroidのLTしてきました。 #JavaOneJP - うさぎ組

    JVM言語BoF Scala, JRuby, Groovyの3つの言語対決というテーマで2時間様々なセッションがおこなわれました。 LTによんでくださったJGGUGさんありがとうございます! ざっくりとした感想はつぎのかんじです。 Scala:静的できれいなコードがかける。短いコードになる。 Groovy:機能が豊富であり、Javaとの親和性もたかい。ビルドツールとしてもよい。 JRuby:Ruby自体のきれいさがある。CRubyのみの知識では難しいらしい。 ベンチマーク結果: Java Groovy++(Groovy++というライブラリを使用) Scala(mutable実装) JRuby Scala(Immutable実装) Groovy 当日の予定としては次のような内容を話すつもりでした。 「RSpec」「Specs2」はUnitTestよりもIntegrationTest向きです。

    JavaOneTokyoでGroovy+AndroidのLTしてきました。 #JavaOneJP - うさぎ組
    uehaj
    uehaj 2012/04/13
    おつかれさん! 今度はもっと長く聞きたいねー
  • Groovyなら1行でできる97のこと - うさぎ組

    ネタ元はid:fumokmmさんのGroovyなら1行でできる97のこと - No Programming, No Life タイトルはまぁあれですが、Groovyって結構ワンライナーで出来ちゃうことが多いよねということで、みんなで97個(+αそれ以上)の一覧を作っちゃいませんか?という企画です。 以前jggugで行われていたg100ponみたいな感じでできたらいいなと思ったので、Google Docsのスプレッドシートで共有してありますので、こんなのあるよ!というのがあったらみなさんでどんどん追加して行っちゃって下さい。よろしくお願いします。 ってことで以下がそのGoogle Docsのリンクです! 97 Things Groovy can runs by one liner http://bit.ly/97_Things_Groovy_can_runs_by_one_liner ってこ

    Groovyなら1行でできる97のこと - うさぎ組
    uehaj
    uehaj 2011/01/31
    これは良い
  • 1