Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Functional Testing  in YAPC::Asia        2012/09/29 kyon mmsponsored by skyarc
Self Introduction名前:きょん(kyon_mm)Blog : うさぎ組Target : 開発環境改善Groovy、テスト、自動化、アジャイル、品質保証25歳うさみみ系男子SCMBootCamp, Nagoya.Testing, ...
SKYARC さんありがとう!
さきに地域の広告だよっ!
我々は基礎をおろそかにしがちである
2012/8/26
Java基礎勉強会
Java基礎勉強会Java言語仕様Javaの型システムJava言語仕様のサブセットをつくったFeatherweight JavaJVMメモリモデルreturnとレキシカルスコープJ2EE
2012/10/21  Nagoya
Scala基礎勉強会
Scala基礎勉強会Scalaの基礎とはなにであるか?Scalaの論文を半日かけて発表議論を繰り返すFeatherweight ScalaScalaの型システムScala 2 JavaScript
ご参加おまちしていますっ    >!<
Yapc !
Perl ?
LLDecadeで発表
継続的コミット
nagoya.pm に発表
ソフトウェアテスト上達法
はっ!Perlの発表したことない!
Perlに対する理解=> Shell Extensions
Perl ?
Perlのトレンドマーク
ラクダ
ラクダ
ラクダ
似てる!
OCamlとPerlは親戚疑惑
僕が毎日書いている  F# コード
F# inspired by OCaml
お?
F# はPerlの親戚の親戚?
ということで、親戚っぽい のでF# の話します。
なかよくしてねっ>!<
普段のF# の使い方
クライアント          プロダクト         .NET          Web                 .NET                  DB
クライアント                プロダクト               .NET                Web                       .NET F#                     DB    ...
結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔スクリプト実行できる
結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔スクリプト実行できる
イメージdoTest[  testCase(“マスタの設定がおかしいときにエラーを返す”)    |> prepare db truncate masterTable    |> action(httpPost “http://localhos...
結合テストで使うF#.NETの資産を使えるそれなりに型推論が効くのである程度省略しても型チェックが効くシンタックスエラーが起きにくい状態を持たない文化があるのでテストが綺麗になりやすいシャドーイング便利
F# が不便なところ型クラスがない多相ヴァリアントが使えないメタプログラミングしづらい構造的部分型がない標準モジュールで足りないものは.NETで補うがシンタックスが微妙
結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔     .NETはここ大変すぎてやばいスクリプト実行できる
そ、こ、で
他のLLを考えてみる
LL(by kyon_mm)OCamlSchemeScalaPowerShellGroovyPythonPerl
LL(by kyon_mm)OCamlSchemeScalaPowerShellGroovyPythonPerl
Perl6というものが あるあらしい
文法が結構イケてる
Perl6の文法でもF#で動く   (気がする)
Perlの環境ってどう整える?
ググった
Haskellと.NETで動く
ktkr
Niecza
Niecza読み方は「ニーソ」っぽいニーソが好きだからこの発表にしたわけではない。ニーソはかわいい。githubからDL、mono環境を構築、make実行で使えるようになる
注目したところ
Perlからdllを使える
つまり
PerlからF# を呼んで関数型Perlプログラミング
「関数型Perlプログラミング」
やってみたけどうまくいかなったorz
でも、今年中には発表でき るようにしたいです!
ご清聴ありがとうぴょん◆
Upcoming SlideShare
Loading in …5
×

Functional Testing in #YAPCASIA

2,023 views

Published on

  • Be the first to comment

  • Be the first to like this

Functional Testing in #YAPCASIA

  1. 1. Functional Testing in YAPC::Asia 2012/09/29 kyon mmsponsored by skyarc
  2. 2. Self Introduction名前:きょん(kyon_mm)Blog : うさぎ組Target : 開発環境改善Groovy、テスト、自動化、アジャイル、品質保証25歳うさみみ系男子SCMBootCamp, Nagoya.Testing, 基礎勉強会
  3. 3. SKYARC さんありがとう!
  4. 4. さきに地域の広告だよっ!
  5. 5. 我々は基礎をおろそかにしがちである
  6. 6. 2012/8/26
  7. 7. Java基礎勉強会
  8. 8. Java基礎勉強会Java言語仕様Javaの型システムJava言語仕様のサブセットをつくったFeatherweight JavaJVMメモリモデルreturnとレキシカルスコープJ2EE
  9. 9. 2012/10/21 Nagoya
  10. 10. Scala基礎勉強会
  11. 11. Scala基礎勉強会Scalaの基礎とはなにであるか?Scalaの論文を半日かけて発表議論を繰り返すFeatherweight ScalaScalaの型システムScala 2 JavaScript
  12. 12. ご参加おまちしていますっ >!<
  13. 13. Yapc !
  14. 14. Perl ?
  15. 15. LLDecadeで発表
  16. 16. 継続的コミット
  17. 17. nagoya.pm に発表
  18. 18. ソフトウェアテスト上達法
  19. 19. はっ!Perlの発表したことない!
  20. 20. Perlに対する理解=> Shell Extensions
  21. 21. Perl ?
  22. 22. Perlのトレンドマーク
  23. 23. ラクダ
  24. 24. ラクダ
  25. 25. ラクダ
  26. 26. 似てる!
  27. 27. OCamlとPerlは親戚疑惑
  28. 28. 僕が毎日書いている F# コード
  29. 29. F# inspired by OCaml
  30. 30. お?
  31. 31. F# はPerlの親戚の親戚?
  32. 32. ということで、親戚っぽい のでF# の話します。
  33. 33. なかよくしてねっ>!<
  34. 34. 普段のF# の使い方
  35. 35. クライアント プロダクト .NET Web .NET DB
  36. 36. クライアント プロダクト .NET Web .NET F# DB テスト
  37. 37. 結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔スクリプト実行できる
  38. 38. 結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔スクリプト実行できる
  39. 39. イメージdoTest[ testCase(“マスタの設定がおかしいときにエラーを返す”) |> prepare db truncate masterTable |> action(httpPost “http://localhost/AAA” [“content-type”,”text/plain”] “errorBody”) |> check(status equals 204) |> check(xmlBody contains “root/child[text()=‘error’]”) testCase(“マスタの設定が正しいときにトップページを返す”) |> prepare db insert masterTable [“col1”,”XXX”;”col2”,”YYY”] |> action(httpGet “http://localhost/”) |> check(status equals 200) |> check(xmlBody contains “root/child[text()=‘top’]”)]
  40. 40. 結合テストで使うF#.NETの資産を使えるそれなりに型推論が効くのである程度省略しても型チェックが効くシンタックスエラーが起きにくい状態を持たない文化があるのでテストが綺麗になりやすいシャドーイング便利
  41. 41. F# が不便なところ型クラスがない多相ヴァリアントが使えないメタプログラミングしづらい構造的部分型がない標準モジュールで足りないものは.NETで補うがシンタックスが微妙
  42. 42. 結合テストの要件 by kyon_mmCUIから起動できて、返り値で合否判定できる記述がアプリケーションドメインに近い拡張性が高い実行環境の構築が簡潔 .NETはここ大変すぎてやばいスクリプト実行できる
  43. 43. そ、こ、で
  44. 44. 他のLLを考えてみる
  45. 45. LL(by kyon_mm)OCamlSchemeScalaPowerShellGroovyPythonPerl
  46. 46. LL(by kyon_mm)OCamlSchemeScalaPowerShellGroovyPythonPerl
  47. 47. Perl6というものが あるあらしい
  48. 48. 文法が結構イケてる
  49. 49. Perl6の文法でもF#で動く (気がする)
  50. 50. Perlの環境ってどう整える?
  51. 51. ググった
  52. 52. Haskellと.NETで動く
  53. 53. ktkr
  54. 54. Niecza
  55. 55. Niecza読み方は「ニーソ」っぽいニーソが好きだからこの発表にしたわけではない。ニーソはかわいい。githubからDL、mono環境を構築、make実行で使えるようになる
  56. 56. 注目したところ
  57. 57. Perlからdllを使える
  58. 58. つまり
  59. 59. PerlからF# を呼んで関数型Perlプログラミング
  60. 60. 「関数型Perlプログラミング」
  61. 61. やってみたけどうまくいかなったorz
  62. 62. でも、今年中には発表でき るようにしたいです!
  63. 63. ご清聴ありがとうぴょん◆

×