├── README.md ├── links.md └── position-papers ├── a-suenami.md ├── h13i32maru.md ├── k1LoW.md ├── kuniwak.md ├── kwatch.md ├── ledsun.md ├── mizzy.md ├── pocketberserker.md ├── template.md └── twada.md /README.md: -------------------------------------------------------------------------------- 1 | # Testing Framework Meeting 2 | 3 | 様々なテスティングフレームワークはどういった考えの下生み出されたのか、どういった方針で拡張されているのかを、言語やコミュニティ間で共有し、議論することを目的としたイベントです。 4 | 5 | あわせて、関連するトピックに関しても触れる予定です。 6 | 7 | ## 対象者、レベル 8 | 9 | * テスティングフレームワークをこれから作ろうと思ってる人 10 | * いつか作りたいと思っている人 11 | * テスティングフレームワークのコミッター、コントリビュータ 12 | 13 | 初心者向けのイベントではありませんので、ご了承ください。 14 | 15 | ## 開催時期 16 | 17 | 2015/09/26 18 | 19 | ## 会場 20 | 21 | 株式会社ミクシィ 22 | 23 | 東京都渋谷区東1-2-20 住友不動産渋谷ファーストタワー7F 24 | 25 | ## Twitter ハッシュタグ 26 | 27 | [#TestingFrameworkMeeting](https://twitter.com/search?q=%23TestingFrameworkMeeting) 28 | 29 | ## 暫定タイムテーブル 30 | 31 | 時間 | 内容 | 発表者 | 32 | -------------|-------------------------|--------| 33 | 10:00-10:30 | 受付開始 | | 34 | 10:30-10:40 | オープニング/会場説明 | | 35 | 10:40- | simplify, amplify | [twada](https://github.com/twada) さん | 36 | - | 質問、議論タイム | | 37 | - | お昼ご飯 | | 38 | - | Go と テスト | [tenntenn](https://github.com/tenntenn) さん | 39 | - | 質問、議論タイム | | 40 | - | lint | [Kuniwak](https://github.com/Kuniwak) さん | 41 | - | 質問、議論タイム | | 42 | - | QuickCheck | [pocketberserker](https://github.com/pocketberserker) | 43 | - | 質問、議論タイム | | 44 | - | Serverspec | [mizzy](https://github.com/mizzy) さん | 45 | - | 質問、議論タイム | | 46 | - | 参加者から提案された議題 | 座談会? | 47 | 18:30-21:00 | 懇親会 | | 48 | 49 | ## 質問・議論タイムのお題 50 | 51 | 発表内容を元に、以下のお題について議論してみましょう。 52 | 53 | * どうなっていくと考えているか、どうしていくのか 54 | * (例えば)普及を見据えてどう舵取りするのか 55 | * まだ試したいことがあるのか 56 | * HogeFuga(という機能)は何をもたらしたか 57 | * 普段の開発にどう影響を与えたか 58 | * 予想外なことはあったりたのか 59 | * (例えば)Goでのテストは他言語での開発に何か刺激をもたらしたか 60 | * テスティングフレームワーク作ったり使ったりしている中で何か関連して作りたくなったものはあるのか 61 | 62 | ## 懇親会 63 | 64 | 会場でビアバッシュを行います。 65 | 参加費は2000円(開催当日支払い)です。 66 | 67 | ## 参加登録方法 68 | 69 | position-papers/template.md をコピーして自身のGitHubアカウント名にrenameし、中身を記述してから本リポジトリにpull requestをだしてください。 70 | pull requestがマージされたら参加登録完了となります。 71 | 72 | ## キャンセル方法 73 | 74 | 自身のポジションペーパーを削除するPull Requestをだす、もしくはキャンセルしたい旨をissueに登録してください。 75 | 運営側がマージ、もしくは作業を行いissueが閉じられたらキャンセル完了です。 76 | 77 | -------------------------------------------------------------------------------- /links.md: -------------------------------------------------------------------------------- 1 | # リンク集 2 | 3 | ## 発表資料 4 | 5 | * http://twada.herokuapp.com/presentations/testing_framework_meeting/testing_framework_meeting.html 6 | * http://www.slideshare.net/takuyaueda967/go-53217449 7 | * https://github.com/Kuniwak/tfmu-testing-framework-and-lint/blob/master/slides.md 8 | * https://gist.github.com/pocketberserker/74c3658a6a9679d1856c 9 | * http://www.slideshare.net/mizzy/serverspec-at-testing-framework-meeting 10 | 11 | ## その他 12 | 13 | * http://togetter.com/li/878978 14 | -------------------------------------------------------------------------------- /position-papers/a-suenami.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | - Ruby on Rails 6 | - Go 7 | - その他、Web サービスで使うもの全般 8 | - MySQL, PostgreSQL 9 | - AWS 10 | 11 | ## power assertに関連するライブラリを使ったことがあるか 12 | 13 | - なし 14 | 15 | ## Serverspecを使ったことがあるか 16 | 17 | * 仕事で使っている 18 | 19 | ## lintを使って開発しているか 20 | 21 | * 仕事で [rubocop](https://github.com/bbatsov/rubocop) と [go lint](https://github.com/golang/lint) を使っている。 22 | 23 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 24 | 25 | * なし 26 | 27 | ## このイベントで議論したいお題(optional) 28 | 29 | * Go のテスト文化が特殊すぎるのでベストプラクティスを聞きたい / 議論したいです。 30 | * これに関してはフレームワークの機能だけでなく、仕様記述やプロダクトコードの設計、コードレビューのやり方等も含めて考えたいです。 31 | * DB 構造のユニットテストをしたいと思っていて意見を伺いたいです。 32 | * 現在簡単なツール開発中。イベントまでには見せれるものを作りたいと思っています。 33 | 34 | ## 懇親会への参加を希望するか(参加費2000円) 35 | 36 | * 希望する 37 | 38 | ## その他書きたいことを自由に記入してください 39 | 40 | * 基本的にいつも Ruby で開発していますが、趣味では Scala 書きます。 41 | * DB 設計が好きです。 42 | * 仕事でちょっとだけ Go のコード読んでるので Go について学びを深めたいです。 43 | -------------------------------------------------------------------------------- /position-papers/h13i32maru.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | - JavaScript(ES6) And AST 5 | - Android Java 6 | - Ruby/RoR 7 | 8 | ## power assertに関連するライブラリを使ったことがあるか 9 | - Yes 10 | 11 | ## Serverspecを使ったことがあるか 12 | - No 13 | 14 | ## lintを使って開発しているか 15 | - No(IDE付属のインスペクションを使っている) 16 | 17 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 18 | - No 19 | 20 | ## このイベントで議論したいお題(optional) 21 | - テストコードから二次生成物を得られないか? 22 | - たとえばサンプルコード、パフォーマンス測定、セキュリティチェックなど 23 | - ライブラリ利用者にとってもテストコードをより有益にするためには? 24 | - テストコードを書きやすくするためのコーディング支援ってあるのだろうか? 25 | 26 | ## 懇親会への参加を希望するか(参加費2000円) 27 | - No 28 | 29 | ## その他書きたいことを自由に記入してください 30 | - JS向けのドキュメンテーションツールを開発しているので、テストコードをドキュメントとして利用できないか考えている 31 | -------------------------------------------------------------------------------- /position-papers/k1LoW.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | - PHP 6 | - AWS 7 | - Ansible 8 | - Emacs Lisp 9 | - Rubyを少し 10 | 11 | ## power assertに関連するライブラリを使ったことがあるか 12 | 13 | - ありません。PHP版とか無いですよね。。。 14 | 15 | ## Serverspecを使ったことがあるか 16 | 17 | - 仕事で活用しています 18 | - [serverspec.el](https://github.com/k1LoW/emacs-serverspec)を作っています 19 | 20 | ## lintを使って開発しているか 21 | 22 | - Emacs内のflycheckでいろいろ動かしています 23 | - PHP-CS-Fixerやrubocopを `git commit` にフックさせていたりします 24 | 25 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 26 | 27 | - ありません。PHP版とか無いですよね。。。 28 | 29 | ## このイベントで議論したいお題(optional) 30 | 31 | - テスティングフレームワーク導入の敷居を低くするようなことを考えていたりしますか? 32 | - `serverspec-init` など 33 | - ドキュメント 34 | - 普及の一助になるはず 35 | - テスティングフレームワークが、現状の状態からオールグリーンなテストケースを生成することについてどう思いますか? 36 | - テストのフレームワークのくせに身もフタもない感 37 | 38 | ## 懇親会への参加を希望するか(参加費2000円) 39 | 40 | - 希望します 41 | 42 | ## その他書きたいことを自由に記入してください 43 | 44 | - [awspec](https://github.com/k1LoW/awspec)を育てています 45 | -------------------------------------------------------------------------------- /position-papers/kuniwak.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | * Vim 6 | * 状況に応じて JavaScript, Prolog, Python を使い分け 7 | 8 | ## power assertに関連するライブラリを使ったことがあるか 9 | 10 | * [Test::Kantan](https://metacpan.org/pod/Test%3A%3AKantan)組み込みのpower assertを使おうとしたが、制約が厳しく断念 11 | 12 | ## Serverspecを使ったことがあるか 13 | 14 | * なし 15 | 16 | ## lintを使って開発しているか 17 | 18 | * [Vim script のlint](https://github.com/Kuniwak/vint)開発者 19 | * ほとんどの言語でlintを利用 20 | * 他言語のlint実装とかウォッチしてます 21 | 22 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 23 | 24 | * なし 25 | 26 | ## このイベントで議論したいお題(optional) 27 | 28 | * Lintに対する不満・要望聞きたいです 29 | * 段階的テストランナーについての情報募集中 30 | * 段階的テストランナーとは、下のように、テストを徐々に範囲を広げて実行できる仕組み 31 | * 関係するファイルのlint 32 | * 関係するユニットテストの実行 33 | * 関係する統合テストの実行 34 | * ... 35 | 36 | ## 懇親会への参加を希望するか(参加費2000円) 37 | 38 | * 希望する 39 | 40 | ## その他書きたいことを自由に記入してください 41 | 42 | * 会場(mixi)の担当者です 43 | * TDDとBDDのテストコードの違いとか気になってます 44 | -------------------------------------------------------------------------------- /position-papers/kwatch.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | * Python 6 | * Ruby 7 | * PostgreSQL 8 | * jQuery 9 | 10 | ## power assertに関連するライブラリを使ったことがあるか 11 | 12 | No. 13 | Instead, I'm using Oktest.py which makes assertion much easier in another way. 14 | 15 | * http://www.slideshare.net/kwatch/oktest-a-new-style-testing-library-for-python 16 | * http://www.slideshare.net/kwatch/what-is-wrong-on-testmore-testmore 17 | 18 | ## Serverspecを使ったことがあるか 19 | 20 | No. 21 | 22 | ## lintを使って開発しているか 23 | 24 | No. 25 | 26 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 27 | 28 | No. 29 | 30 | ## このイベントで議論したいお題(optional) 31 | 32 | * Testing SQL 33 | * Fixture data management 34 | * What is different between 'TDD', 'BDD', and 'test-first'? 35 | * Should we separate test code from main code? 36 | * Should we use same programming language to write test code as main code? 37 | 38 | ## 懇親会への参加を希望するか(参加費2000円) 39 | 40 | Yes. 41 | 42 | ## その他書きたいことを自由に記入してください 43 | 44 | -------------------------------------------------------------------------------- /position-papers/ledsun.md: -------------------------------------------------------------------------------- 1 | ## よく使ってる技術(仕事、プライベート問わず) 2 | 3 | - JavaScript 4 | - C# 5 | - Atom 6 | - Ansible を開発環境構築に 7 | 8 | ## power assertに関連するライブラリを使ったことがあるか 9 | 10 | - プライベートでpower-assertをよく使う 11 | 12 | ## Serverspecを使ったことがあるか 13 | 14 | - No. 15 | 16 | ## lintを使って開発しているか 17 | 18 | - JSLintを仕事で使っている 19 | 20 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 21 | 22 | - No. 23 | 24 | ## このイベントで議論したいお題(optional) 25 | 26 | - (GUIアプリケーションの)手動テストを楽にするための自動テストの使い方 27 | - 自動テストへの置き換えはうまく行っていません 28 | - 手動テストを楽にするために、 [furiosa](https://github.com/ledsun/furiosa)という、gitのdiffからアプリケーションの「変更のある振る舞い」(MVCのControllerの変更)を抽出する静的解析ツールを作りました。 29 | - 抽出した変更点を元に、全テストセットから実施するテスト項目を選びます。 30 | - このようなツールがTestingFrameworkとしてアリなのか知りたい。 31 | 32 | ## 懇親会への参加を希望するか(参加費2000円) 33 | 34 | - Yes. 35 | 36 | ## その他書きたいことを自由に記入してください 37 | 38 | - 普段、JavaScriptでGUIアプリケーションを開発し「忍者式テスト」(毎日実施する手動テスト)を行っています。 39 | - プライベートや小さいツールを作るときは、Mocha と power-assertを使っています。 40 | - たまに、MSTestを使います。 41 | -------------------------------------------------------------------------------- /position-papers/mizzy.md: -------------------------------------------------------------------------------- 1 | ## よく使ってる技術(仕事、プライベート問わず) 2 | 3 | * Serverspec 4 | * Ruby 5 | * AWS 6 | * Puppet 7 | * Itamae 8 | * Vagrant 9 | * Jenkins 10 | * [Walter](https://github.com/walter-cd/walter) 11 | 12 | ## power assertに関連するライブラリを使ったことがあるか 13 | 14 | * Serverspec の power assert 対応の試験実装のため、test-unit を少し。 15 | 16 | ## Serverspecを使ったことがあるか 17 | 18 | * もちろん使ったことあります。 19 | 20 | ## lintを使って開発しているか 21 | 22 | * 使ってません。 23 | 24 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 25 | 26 | * 使ったことありません。 27 | 28 | ## このイベントで議論したいお題(optional) 29 | 30 | * Serverspec を利用している方に、どのような使い方をしているのかお聞きしたいです。 31 | * インフラ CI について議論したい、というか、以下のような問題意識を抱えています。 32 | * 外部要因で Fail することが多い。 33 | * パッケージリポジトリにつながらない。 34 | * 指定のバージョンのパッケージが削除される(Ubuntu でよくある)。 35 | * AWS のインスタンスが起動してこない/Request Limit に達する。 36 | * などなど。 37 | * 時間がかかる。 38 | * AWS で安く抑えるためにスポットインスタンスを利用しているが、起動に時間がかかる。 39 | * プロビジョニングに時間がかかる。 40 | * 特にパッケージインストール。 41 | * 外部要因での Fail、時間がかかることによるダルさ、その割に、致命的な問題が見つかることがあまりない、といった要因により、維持するモチベーションが… 42 | 43 | ## 懇親会への参加を希望するか(参加費2000円) 44 | 45 | * 希望します。 46 | 47 | ## その他書きたいことを自由に記入してください 48 | 49 | * サーバインフラのテストに応用できそうな知見を学ばせて頂ければと思います。 50 | -------------------------------------------------------------------------------- /position-papers/pocketberserker.md: -------------------------------------------------------------------------------- 1 | # pocketberserker 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | * プライベートだとF# , Scala を書くことが多い 6 | 7 | ## power assertに関連するライブラリを使ったことがあるか 8 | 9 | * Groovyのpower assert、JavaScriptのpower-assertを少々 10 | 11 | ## Serverspecを使ったことがあるか 12 | 13 | * ドキュメントや書籍は読んだり 14 | * 仕事などで実際に使ったことはない 15 | 16 | ## lintを使って開発しているか 17 | 18 | * 仕事で使ってる 19 | 20 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 21 | 22 | * 移植したことがある https://github.com/persimmon-projects/Persimmon.Dried 23 | * 他の言語のものもそれなりに目を通してはいる 24 | 25 | ## このイベントで議論したいお題(optional) 26 | 27 | * テストケースやアサーションの合成について考えてみたい 28 | * 個人的(?)に https://github.com/persimmon-projects/Persimmon で実装検証は進めてみている 29 | * soft assertionについてどう思うか 30 | * 参考 http://joel-costigliola.github.io/assertj/assertj-core-features-highlight.html 31 | 32 | ## 懇親会への参加を希望するか(参加費2000円) 33 | 34 | * 希望する 35 | 36 | ## その他書きたいことを自由に記入してください 37 | 38 | * 本イベントのいいだしっぺです 39 | * F#用テスティングフレームワーク実装のお手伝いをしている際に思うところがあったので企画を試みました 40 | 41 | -------------------------------------------------------------------------------- /position-papers/template.md: -------------------------------------------------------------------------------- 1 | optionalとついているものは、任意回答です。 2 | 3 | ## よく使ってる技術(仕事、プライベート問わず) 4 | 5 | ## power assertに関連するライブラリを使ったことがあるか 6 | 7 | ## Serverspecを使ったことがあるか 8 | 9 | ## lintを使って開発しているか 10 | 11 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 12 | 13 | ## このイベントで議論したいお題(optional) 14 | 15 | ## 懇親会への参加を希望するか(参加費2000円) 16 | 17 | ## その他書きたいことを自由に記入してください 18 | 19 | -------------------------------------------------------------------------------- /position-papers/twada.md: -------------------------------------------------------------------------------- 1 | ## よく使ってる技術(仕事、プライベート問わず) 2 | 3 | * プライベートで使っているのは JavaScript と Ruby 4 | * 言語は仕事(流しのペアプロ業)ではお客様先の言語なので Ruby(Rails), PHP, JavaScript が多い 5 | * 主な開発環境は IntelliJ と Emacs 6 | * Emacs からなかなか離れられない……(Atom 移行も上手くいかず) 7 | 8 | ## power assertに関連するライブラリを使ったことがあるか 9 | 10 | * JavaScript 版の作者だったりします 11 | 12 | ## Serverspecを使ったことがあるか 13 | 14 | * お客様先に導入し、非常に助かっています 15 | * インフラチームが Web サーバのバージョンを上げたときに誤ってディレクトリが書き込み不可になるも、 Serverspec を CI で流していたので不具合を未然に防げたことがありました 16 | 17 | ## lintを使って開発しているか 18 | 19 | * 各言語の lint を使っています 20 | * あとは CI で lint を掛けて報告してくるやつ (rubocop や hound みたいなの) も lint と言えますかね、あれは些末なコードレビューを防ぐために役立っています 21 | 22 | ## QuickCheckやそれに類するライブラリを使ったことがあるか 23 | 24 | * これも各言語版を調べたり試したりしていますが、日々使うところまでは来ていません 25 | 26 | ## このイベントで議論したいお題(optional) 27 | 28 | * テスティングフレームワークに関する技術の蛸壺化を避け、どのように言語や文化をまたいだ普及への道を開くか 29 | * Design by Contract について 30 | * テスティングフレームワーク周辺ツールについて皆さんがどのようなものをどう作っているか/使っているかに興味があります 31 | 32 | ## 懇親会への参加を希望するか(参加費2000円) 33 | 34 | * できれば参加したいです 35 | 36 | ## その他書きたいことを自由に記入してください 37 | 38 | --------------------------------------------------------------------------------