Go Conference’19 Summer in Fukuoka で費用対効果の良いテストを目指すための目的・基礎・実践について話したものです
![Cost-effective Go Unit Test thinking and practices](https://cdn-ak-scissors.b.st-hatena.com/image/square/4bc5b6a42355f71c67876cad1372f3fb4491b9b6/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Ff859b66c404d4c3ba62fe67380af4229%2Fslide_0.jpg%3F13029412)
Go Conference’19 Summer in Fukuoka で費用対効果の良いテストを目指すための目的・基礎・実践について話したものです
勉強会告知ページ connpass.com 発表スライド 組織にテストを書く文化を根付かせる戦略と戦術 from Takuto Wada www.slideshare.net 発表のねらい 戦略の話と戦術の話 自己紹介 昼はコンサルの仕事をしている いろんな組織にテストの書き方を根付かせるための活動とか 銀の弾丸はない レガシーコード改善に正解はない テスト自動化は銀の弾丸ではない 導入方法にも銀の弾丸はない 導入を目的にしてはならない 状況は現場によって全く異なる 勝ちパターンはだいたいある 「t_wadaが来たから大丈夫だ」ではない ジェラルド・ワインバーグの影響図 ストレスが増えるとテストの回数が減る テストの頻度が減るとストレスが減る どうやってこの無限ループを抜け出すか ノードを増やす? テストではなく自動テストにする&テストが先に来るようにする ケント・ベックの提案 テストを書
Mercari Advent Calendar 2018 19 日目です。 担当はメルカリ JP フロントエンドチームの @nekobato がお送りします。 メルカリ フロントエンドチームでは主に React を利用してフロントエンド構築を行っており、 その中のWeb Rearchitecture では Storybook による UI Testing に取り組んでいます。 今回はフロントエンドの UI Testing と Unit Testing を Storybook & Storyshots を利用して行っているという話をします。 Storybook とは Storybook は個別の UI コンポーネントをブラウジングする開発環境を構築するモジュールです。 単独では目視による UI テストを可能にするのみですが、アドオンと組み合わせることで様々なテスト環境を構築することが可能にな
この記事について Laravel でテストするときに、フィーチャーテスト用のデータをどのようにつくっていけばいいか、試行錯誤中なので、それについてのメモ的なかんじです。 概要 環境 PHP 7.1.12 Laravel 5.5.28 詳細 Eloquent Model Factory とは Eloquent Model Factory についての解説は以下の記事が網羅的かつ分かりやすいので、読んでみてください。 Laravel5.5でほぼ完成されたModelFactoryの使い方 - Qiita 公式ドキュメントには以下の記載があります。 When testing, you may need to insert a few records into your database before executing your test. Instead of manually specifyin
数年開発続いてるけどテスト全くないみたいなよくあるコードベースを想定。 不具合を修正する時についでにリファクタリングしてドメイン層のテストを書く。 手動テストで不具合を再現 ViewからロジックをControllerへ移動し、Viewからは値の参照のみにする 移動したロジックをController内でプライベートメソッドに切り出す。返り値を(2)の値にセットする プライベートメソッドを外に出して関数→モジュール化する (4)のメソッドに対してテストを書き、失敗するのを確認する ポイントとしては 運用的観点ではなるべく早く不具合を修正してデプロイしたいので、リファクタリングだけ別のブランチでゆっくりやる 依存がでか過ぎで解決できなさそうなど問題があれば、その時点ではテストを書くのを諦める。行動したことで学んだIssueを起票する 具体的なリファクタリング方法は レガシーコード改善ガイド (O
UIテストを作るとき、Seleniumなどを使ってブラウザを操作するかと思います。 UIが変わっていないことを担保するためには画面のスクリーンショット画像を作り、差分がないことを確認するほか、それを可視化することが必要になるでしょう。 では、その画像差分をどうやって取ってますでしょうか? たとえば、ImageMagickを使う方法があります。 参考: http://blog.mirakui.com/entry/20110326/1301111196 ただ、リンク先の画像を見れば分かる通り、差分が出た箇所しかハイライトできないので、大きなUIの一部だけちょっと変わった!といったケースだと差分が分かりにくい場合があると思います。 また、OS X向けにhomebrewでImageMagickをインストールするのはビルド時間が長くてしんどいなどの問題もあるでしょう。 そういった場合に、go-dif
これは Vue.js #3 Advent Calendar 2017 - Qiita 1日目の記事です。 最近、お仕事でVue.js x SSRを使って開発を進めていた カラーミーリピート というサービスをリリースすることが出来ました。このサービスの開発を進めていく上で、とあるcssの修正が想定外の場所にも反映されてしまい、スタイルが崩れてしまう。という問題が時々発生していました。リリース前まではそれほど問題視してきませんでしたが、今後スタイル崩れに気付かずにリリースしてしまうのは非常に問題で、なんとか防ぐ方法を探していました。 先週末に東京Node学園祭2017が開催されましたが、そこで@QuramyさんのIntroduction to Visual Regression Testing の発表資料を拝見してreg-suitの存在を知り、これは求めていたものではないか!?ということで、V
vue-cliによるプロジェクトの作成 公式を参考に、vue-cliを使ってUnitTest検証用のプロジェクトを作ります。 vue init webpack utest - webpackボイラープレートを使用した新しいプロジェクト - utestプロジェクトの名前 サンプルなので、インタラクティブな質問項目については適当にエンターキーを押していき進みます。途中、Pick a test runnerという項目が出てきます。ここでどれにするか。。 Mochaはサードパーティのアサーション、モック、スパイツールを組み合わせてテストを実行するフレームワークです。一方、Jestはそれらがひとまとまりになったフルスタックのテストフレームワークと言えます。今回は簡単に始められそうなJestにしてみます。公式の日本語ドキュメントもあります。 本記事では言及しませんが、e2eテストはNightwatch
本記事は Vue.js Advent Calendar 2016の16日目の記事となります。よろしくお願いします。 始めに 先日「Vue.js componentでvue-router,vue-resourceを利用したメソッドのUnitTestを書く方法」というのを書きましたが、vue-resourceはVue.js本家から引退したこともあり、HTTP Clientをaxiosに乗り換えてみました。 今回はaxiosを利用したVue componentのUnit Testを書く方法をまとめます。また今回のサンプルコードは全てこちらにあります。 環境 下記を利用します。テスト環境は Karma + mocha + chai + sinonですが、これらの説明は今回は省略します。 Vue.js 2.1.3 axios 0.15.3 テストケース テスト対象コード 下記のようにaxios.ge
※このエントリはVue.jsアドベントカレンダー10日目の記事です。 最近の開発はjQueryでプロトタイピングだけ行って、本開発はVue.jsをベースに行っているPotato4dです。 Vue.jsは非常に強力で便利なフレームワークですが、そのテストについての情報というのは、探しても中々見つからないため、困っているかたも多いのではないでしょうか。 今回は、そんな問題を解消するために、Vue.jsのコンポーネントをテストしていく手法について共有していきたいと思います。 開発の準備 今回の環境 今回は、簡単に導入して試していくために、Vue.js公式のコマンドラインツールvue-cliを用いて開発を行っていきます。 vue-cliは、Vue.jsを用いた様々なプロジェクトの雛形を自動生成してくれるツールとなり、Node製であるため、Vueの開発環境が整っていれば、すぐに導入し、開発を始めるこ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く