Oct 31, 2018 at AWS Dev Day Tokyo 2018 #AWSDevDay #AWSTDD
JavaScript の進化 ここ 1, 2 年で JavaScript という言語は何倍も高速化されました。 それは何故でしょうか。 その要因を少し考えてみました。 SunSpider の出現 その一番の要因は、 JavaScript のパフォーマンステスト SunSpider ではないでしょうか。 SunSpider によって、シンプルで分かり易い JavaScript エンジンの指標が誰にでも分かる数字として提供されたのです。 これと似たような事例として、 acid2 test 、 acid3 test があります。 このテストも、レンダリングエンジンの正しさを分かり易い数字や絵として提供しました。 その結果、今日のウェブブラウザのレンダリングエンジンは目覚ましい進化を遂げたのです。 まとめ 進化の裏にはテストあり。 テストはソフトウェアの最良のマーケティング手段かも。 面白くて分か
TL;DR - 最初の一人はつらいけど後続はそうでもないので先駆者は自覚と誇りを持ってオールグリーンを維持しよう このエントリはMarionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogというエントリの続きにあたります。未読の方は先にそちらを一読されることをおすすめします。 Marionette.js ベースで3ヶ月開発したアプリのカバレッジ推移をまとめてみた - @kyanny's blogの結論で触れたように、今回テストを書くことにこだわったのは、「クライアントサイド JavaScript (AltJS) のテストを書くのは本当に難しいのか?」という問いに対する自分なりの回答を実践して検証してみたかったという理由があったからだ。 以前から「クライアント JavaScript (CoffeeScript や他の AltJS を
はじめに 先週の土曜日(2015年5月16日)に西脇.rb&神戸.rbで「Rubyistのためのテストコード相談会 ~テストの書き方に悩んでいませんか?~」という勉強会を開催しました。 この勉強会は「テストコードに関する疑問や悩みをみんなで持ち寄り、みんなで解決すること」を目的にした勉強会です。 勉強会中はいろいろと興味深い議論が出たので、今回のエントリではその内容を簡単にまとめてみます。 勉強会で挙がった質疑応答 よく使うフレームワークは? RSpecが大多数、Minitestが若干名。 gemを開発するときはMinitest、RailsはRSpec、というように開発内容によってフレームワークを使い分ける、という人もいた。 Minitestってどうなの? 導入が簡単。assertメソッドだけ知っていればなんとかなる。 Railsにも対応している。Capybaraも使える。 RSpecのs
参加した時のメモです。 t-wadaさん Testing Framwork Meeting テスティングフレームワークの歴史 http://www.slideshare.net/everzet/bdd-in-symfony2/42 のスライドがベース。 有史以前 make checkのように、テストを自動化する風習はあった。 開発者はそれぞれ秘伝の手法でテストコードを書いていた。 JUnit Kent BeckがJUnitを書いた。 1994 SUnit 1997 JUnit プロダクトコード書いてから、テストコードを書くまでの時間が短いほうが、 プロダクトコードに対する気づきが得られ、それをプロダクトコードに反映できることがわかった。 テストコードをさらに早く、プロダクトコードより早く書いた。 テストファーストが生まれ、ユーザーの視点でプロダクトコードを設計できるようになった。 自動テス
技術部の taiki45 です。 現在のクックパッドでは、cookpad.com 内のデータを利用するようなプロダクトでも、cookpad.com を提供しているアプリケーション(本体アプリケーション)とは別に新規のアプリケーションとして設計・実装しています。また、すでに本体アプリケーションの一部として実装されているプロダクトについても、トレードオフを考慮しながら場合によっては、本体アプリケーションから独立した別のアプリケーションとして設計・実装することが増えてきています。これらの本体アプリケーションや、新規にあるいは本体アプリケーションから独立させて設計・実装したアプリケーションのことを「サービス」と呼んでいます。また、この本体アプリケーションから独立させることを「サービス分割」と呼んでいます。 制御できないほどの巨大な複雑なまとまりを制御するために、その巨大なまとまりと単純なまとまりに
昨日のRails Developers Meetupで綺麗なテストコードの書き方について発表してきました。 Rails Developers Meetup #1(東京会場) - connpass 資料はこちら 余談 もともと数年前くらいから、テストコードの書き方についてまとめたいなーと思っていたのですがなかなかキッカケがなくて手を付けられていませんでした。今回のミートアップ駆動で一通り形にするところまでいけて今とてもスッキリした気持ちです 😇 もっと多くの人にテストコードの書き方を意識してもらいたいので、また機会があればどこかで喋りたいですね。 昨日発表した内容はGitHubリポジトリにまとめたものの一部です。綺麗なテストコードの書き方について詳しく知りたい方は下記のリンクからどうぞ。 willnet/rspec-style-guide お願い 今回まとめた内容はあくまで僕が考えるテスト
Speee エンジニア組織推進室の服部 (yhatt) です。 みなさん E2E テストされていますでしょうか。弊社の Ruby on Rails プロダクトにおいては、RSpec、Capybara、 Poltergeist を組み合わせ、 feature spec で E2E テストを行う構成が一般的でした。 そんな中、Chrome 59 に ヘッドレスモード (--headless) が搭載 されたことで、テストや CI 環境において、最新の Chrome 環境による E2E テストを実施できるようになりました。それに合わせて、PhantomJS のコアメンテナーがメンテナーを降りる ことを発表し、PhantomJS のアップデートや、継続的サポートは期待できない状況となっています。 ヘッドレス Chrome ことはじめ | Web | Google Developers [A
SWETの薦田(@toshiya-komoda)です。 今回は第3回目の記事で言及させていただいた機械学習とUIテストに関して実験的に進めている技術開発について紹介させていただこうと思います。 この記事で紹介している内容の実装はGitHubにアップロードしていますので、もし興味がある方はこちらも覗いてみていただければと思います。 こちらはTensorFlow Advent Calender 2017第7日目の記事にもなっています。機械学習の実装の中でKerasを用いてます。 とりあえずデモ 最初に以下のデモ動画をご覧いただきたいです。会員登録フォームに対する自動テストのデモです。各入力欄に適切な情報を入力しつつ、パスワード欄にだけ'weak'という不正なパスワード文字列を入力して、バリデーションで弾かれることを確認するテストです。デモでは入力欄に値を埋める部分を、Chrome Extens
こんにちは。メルカリで自動化&品質保証グループ(Automation & QA Group:通称AQA)のエンジニアリングマネージャをぶりぶりしている@daipresentsです。 AQAは、従来のQAではなく、自動化を駆使した「完全自動化時代のQA」を目指すグループとして活動しています。その道のりはなかなか険しいのですが、じわりじわりとメンバーも増え、社内でも「自動化」というキーワードが広がってきました。 この記事では、テスト自動化でとても大切なポイントとなる、テスト結果をまとめたビューティフルなレポートのノウハウを共有させていただこうと思います。 継続的システムテスト 現在、メルカリAQAでは、「継続的システムテスト」の実現に取り組んでいます。ここでいう継続的システムテストとは、365日24時間、ずーーーっと自動化されたE2Eテスト(レグレッションテストとも言える)を実行することを指し
初めまして。メルカリで自動化&品質保証グループ(Automation & QA Group:通称AQA)に8月からジョインし、自動化をぶりぶりしている@AHA_oretamaです。 10/18, 19にシカゴで開かれたSeleniumConf Chicagoに参加してきました。 SeleniumConf Chicagoの内容は@arminminさんの次回ブログを見てもらうとして、ここでは、その中で一番印象的だったセッションAI for element selectionで紹介されたTest.ai Classifier Plugin for Appiumプラグイン(以降、Test.ai Classifier Plugin)を使用したAIによる要素セレクタを試してみました。 (Test.ai Classifier Pluginの詳細については、そのセッション後すぐに、Appium:proでも紹
UIテストの所要時間を10分の1にする試み、Raspberry Piのクラスタで並列実行。ソフトウェア品質シンポジウム2018 開発現場の多くでテストの自動化が進む中で、テスト時間を短縮することはビルドとテストの待ち時間を減らし、開発効率を高める上で重要なポイントになってきています。 そうしたなかで時間がかかっていたUIテストの所要時間を短縮する手段としてRaspberry Piをクラスタ化する手法を紹介するのが、レバテック株式会社 折田武己氏です。 本記事では、9月12日から14日のあいだ東洋大学で開催された「ソフトウェア品質シンポジウム」(日本科学技術連盟主催)での折田氏のセッション「UIテストの所要時間を10分の1に短縮する取り組み~ラズベリーパイのクラスターで並列実行~」の内容をダイジェストで紹介します。 単体テストはさくさく終わるのにUIテストは時間がかかる レバテック株式会社
はじめに 最近、意図的に「単体テスト」「結合テスト」という呼び方を避け、Google Testing Blogで紹介されてるTest Sizesによる分類(small / medium / large)に従った呼び方でテストを呼んでいる。 この分類方が自分の身の回りに徐々に浸透してきて、実際のチーム内のテスト戦略も一歩進んだ議論ができるようになってきたので、改めてまとめる。 ちなみにこの記事の話は手動で行われるテストではなく、自動テストを対象としているが本質はあまり変わらないと思う。 続き書きました。 akito0107.hatenablog.com 「単体テスト」「結合テスト」という呼び方について ソフトウェア開発に従事していれば必ず聞く言葉だと思う。改めて他のサイトから引用する形で定義をまとめておく。 単体テストとは *1 単体テストとは、プログラムを検証する作業の中でも、プログラムを
はじめまして。 セガゲームス「龍が如くスタジオ」専属QAエンジニアの阪上と申します。 今回は、QAエンジニアという職種の紹介とゲーム開発におけるテストの話を、「龍が如くスタジオ」での開発の歴史を振り返りながらご紹介したいと思います。 目次 目次 ゲームのテストって何をするの? QAエンジニアの仕事内容 (2009年~) 自動プレイテスト (2013年~) QAエンジニアの誕生と加速するテスト環境の自動化 (2015年~) テストの結果分析 (2018年~) テストピラミッドの考察とQAエンジニアリングの未来 まとめ 参考資料 ゲームのテストって何をするの? 本題に入る前に、QAエンジニアのQAとは何なのかを説明しておこうと思います。QAは 「Quality Assurance」の略で、日本語では品質保証という意味です。ゲーム開発においては、ゲームが正しく動作しているか、バグがないか、ゲーム
最近、FMPictというテスト設計自動化ツールを作りました。 https://github.com/hiro-iseri/fmpict FMPictは、FreeMindのモデルからテストケースを生成するテスト設計自動化ツールです(PICTを制御して実現しています)。nワイズカバレッジ(n:1~3)を100%網羅するテストケースを生成できます。オールペア法ツール、クラシフィケーションツリー法ツールとして利用可能です。 ツールは以下のメリットを持ちます。 マインドマップでテスト条件をモデリングできます。それにより、テスト条件の抽象構造やグルーピング構造をわかりやすく表現できます。 ツリーモデルの記法的制約(*)の回避手段として、リンク記法とタグ記法という機能を加えています。これによりツリーの重複をなくしたり、複数のツリーを一つのツリーにまとめて描いたりすることが可能です。 PICTをマインドマ
テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま
RailsのCIが遅くて辛かったので幾つかのテストでprofileを取ってみたところ、assetsを読み込む処理にすごく時間がかかっているようだった。 そういうパターンでは以下の手順でお手軽に高速化できたのでメモ やったことCIがrspecを走らせる前にassets:precompileを行うCIのときだけconfig.assets.compile = falseが動くようにconfig/environments/test.rbに設定を追加する考えたら当たり前だけどコレだけでかなり早くなった。 (試した環境では40分ぐらいかかっていたテストが25分に短縮された。) assetsが絡むテストの割合が少ない場合はassets:precompileのオーバーヘッドでむしろ遅くなったりも考えられるが、一回実行するだけでわかるので試しやすい。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く