タグ

testingに関するusadamasaのブックマーク (20)

  • t_wadaさんと「単体テストの使い方/考え方」の疑問点についてディスカッションしました - DeNA Testing Blog

    こんにちは、SWETグループの田熊です。 現在SWETグループでは書籍「単体テストの使い方/考え方」の輪読会を実施しています。 輪読会ではメンバー同士で活発に意見が交わされていますが、著者の主張に疑問を感じる箇所もあり、一度グループ外の方とも意見を交換したいと考えていました。 そこで、t_wadaさんをお招きし「単体テストの使い方/考え方」についてディスカッションする機会を設けました。 記事では、SWETメンバーとt_wadaさんとのやりとりを紹介したいと思います。 ディスカッションの流れ ディスカッションは事前にSWETグループのメンバーが書籍を読んで疑問に感じたテーマを挙げてもらい、t_wadaさんの意見を聞くという流れで行いました。 今回は次のテーマについて話をしました。 「退行に対する保護」があるテストとはなにか 「リファクタリングへの耐性」のトレードオフはあるのか 統合テストの

    t_wadaさんと「単体テストの使い方/考え方」の疑問点についてディスカッションしました - DeNA Testing Blog
  • 実録レガシーコード改善 / Working with Legacy Code: the True Record

    2024/01/15(月) 12:00 〜 13:00 t-wadaさんが後世に残したい、実録レガシーコード改善 https://findy.connpass.com/event/304101/ テストコードが無いコードを引き継いだところからはじまる、実際に2018年に行った受託開発案件のエピソードとコードをプロダクトオーナー(引き継ぎ前のコードを書いた人)の許可を得て使用しています。登場するコードは全て物、登場するデータは講演用の架空のものです。

    実録レガシーコード改善 / Working with Legacy Code: the True Record
  • 保守しやすく変化に強いソフトウェアを支える柱 自動テストとテスト駆動開発、その全体像 ~Software Design 2022年3月号「そろそろはじめるテスト駆動開発」より | gihyo.jp

    保守しやすく変化に強いソフトウェアを支える柱 自動テストとテスト駆動開発⁠⁠、その全体像 ~Software Design 2022年3月号「そろそろはじめるテスト駆動開発」より 今回、Software Design 2022年3月号 第2特集「そろそろはじめるテスト駆動開発 JavaScriptでテストファーストに挑戦」の第1章「保守しやすく変化に強いソフトウェアを支える柱 自動テストとテスト駆動開発、その全体像」をサイトに掲載します。第2章以降については、誌『Software Design 2022年3月号』電子版(Gihyo Digital Publishing、Amazon Kindle)をご購読いただければ幸いです。 第1章では、混同されることの多い自動テスト関係の概念を、自動テスト、テストファースト、テスト駆動開発の3つの段階に分け、それぞれの効果や注意点を説明します。ソフ

    保守しやすく変化に強いソフトウェアを支える柱 自動テストとテスト駆動開発、その全体像 ~Software Design 2022年3月号「そろそろはじめるテスト駆動開発」より | gihyo.jp
  • リファクタリングが先か、テストが先か - E2E自動テストの理想と現実 |Autifyブログ

    2023年5月17日から5月19日にかけて開催された Qiita Conference 2023 にて、弊社の Senior Technical Support Engineer である末村 拓也が『リファクタリングが先か、テストが先か – E2E自動テストの理想と現実』というタイトルで講演を行いました。記事はこのセッションを元に、ブログ向けに若干アレンジを加えたものとなります。 概略 この記事では、以下のような内容について説明します。 自動テストコードはアプリケーション体のコードと 依存関係 を作る 一般的に、 不要な依存関係 を排除するのが良い設計と言える 一方で、E2Eテストは GUIに対して強い依存関係 を作る テストの準備などで GUIとの不要な依存関係 を作らないようにするのが重要 不要な依存関係を減らすために、テストレベル を一つ落とす(ユーザーストーリーE2E) 低いテ

    リファクタリングが先か、テストが先か - E2E自動テストの理想と現実 |Autifyブログ
  • 事例から学ぶ実例マッピングのやり方 / Example Mapping

    【発表資料中のURL】 ※複数ページで出てくる場合は、初出のページ数に掲載 ◆P3 ・Introducing Example Mapping ・【翻訳記事+α】受け入れ基準の設定時などに役立つプラクティス「実例マッピング(Example Mapping)」 ◆P6 ・Continuous Testing in DevOps… ◆P7 ・Shifting left & right in our continuous world ◆P11 ・Wモデルとは何か ◆P74 ・The BDD Books - Discovery ・The BDD Books - Discovery (Japanese Edition) ◆P75 ・Keep your scenarios BRIEF ・【翻訳記事】テスト自動化の対象となるテストシナリオの整理に役立つBRIEFの原則 ◆P82 ・QAエンジニアが実例マッ

    事例から学ぶ実例マッピングのやり方 / Example Mapping
  • テストでのデータベース単位の捉えかた - 日々常々

    データベース(に限らずあらゆる永続化リソース)を使用するテストをいかにして行うかはいつだって悩みの種です。この悩みは「どうやったらデータベースを使用するテストを行えるかわからない」ではなく「なんとかやってるけど、不満のようなものがある」というものになるかと思います。 やりかたはたくさんあるのですが、その優劣は条件なしに比較する意味がないくらい、条件に依存します。どんな選択肢も「この条件なら最適」と言えてしまうだけに、広いコンテキストで「こうするのがベスト」とも言いづらいのです。 前提 xUnit Test Patterns を下敷きにします。 ユニットテストでの話です。他でもある程度通じます。 具象イメージはSpringBootを使用するWebアプリケーションです。そこまでべったりな内容ではありませんが、背景にあるとご理解ください。他でもそれなりに通じます。 データベースを使用するテストで

    テストでのデータベース単位の捉えかた - 日々常々
  • スモールチームにおけるAutifyを用いた効率的なE2Eテストの自動化 | 株式会社ヌーラボ(Nulab inc.)

    こんにちは。BacklogのGit機能の開発を行っているテリーです。 今回はGitチーム(後述する僕の所属するチーム)でAutifyによるリグレッションテストの自動化を進めてみて感じたメリットと工夫したところ、苦戦したところを紹介したいと思います。 スモールチームの規模感とテストの現状 BacklogのGitチーム 長らくBacklogは固定のチームが専任で固定の機能をみるような体制になく、アプリケーションエンジニアが比較的流動的にBacklog全体の機能を担当しており、なんとなく“この人”は“この機能”が得意というような体制でした。 ですが最近のチーム編成により固定のチームが固定の機能を開発するようなフィーチャーチームがいくつかできました。Gitチームはその中で生まれたBacklogのGitの機能についての開発責任を持つチームです。チームメンバーは3人で、そのメンバーでインフラからフロン

    スモールチームにおけるAutifyを用いた効率的なE2Eテストの自動化 | 株式会社ヌーラボ(Nulab inc.)
  • テストの自動化とテスト駆動開発

    組織としてテスト自動化に取り組むべき理由と、手段としてのテスト駆動開発を紹介する講演資料です。以下のような内容です。 ねらい: ・主に顧客向けの業務システム(B2B)を開発している、 ・プロジェクトベース、ウォーターフォールプロセスが主流の開発現場や運用保守の現場にいる、 ・マネージャーのかたに向け、 ・テスト自動化が自分たちのメリットになると納得してもらい、 ・その道筋として2つのアプローチを紹介して、 - テスト駆動開発 - ペアプログラミング ・組織的・長期的に取り組む価値を感じてもらう アジェンダ: 1.自動化したい理由 2.必要な人材を考える 3.テスト自動化の端緒 ~テスト駆動開発について~ 4.深めつつ広げる鍵 ~ペアプログラミングについて~ 5.見る夢について

    テストの自動化とテスト駆動開発
  • Test Flakiness - One of the main challenges of automated testing

    What I would like to see is a breakdown of how many failures fall into which category. And of the above categories, while useful for root cause analysis and eventual fix, for sake of triaging results, and disposition of what to do if hitting such a failure, it seems that whether or not the failure is a true product failure is a HUGE difference from the other three. For the other three, the major r

    Test Flakiness - One of the main challenges of automated testing
  • テスト活動の納得感を持ってテストケースを激減させた話 #D3QA / Improving convinced testing activities

    以下のイベントの投影資料です。 https://d-cube.connpass.com/event/187308/ お問い合わせは https://twitter.com/nihonbuson まで。 【発表資料内にあるURL】 ▽P2:書籍『Agile Testing Condensed』 https://leanpub.com/agiletesting-condensed-japanese-edition ▽P36:書籍『A Practical Guide to Testing in DevOps』 https://leanpub.com/testingindevops ▽P55:プランニングポーカーかんたんガイド https://www.slideshare.net/Ryuzee/ss-11644359/4 ▽P69:Agile Testingのエッセンス #scrumosaka h

    テスト活動の納得感を持ってテストケースを激減させた話 #D3QA / Improving convinced testing activities
  • 仕様記述テクニック「Promotion」の紹介 - DeNA Testing Blog

    こんにちは、SWETの鈴木穂高(@hoddy3190)です。 私はこちらの記事に記載の通り、形式手法の可能性を模索しています。 現在はツールやゲームの仕様を形式的に記述すること(形式仕様記述)で、仕様の欠陥をなるべく早く見つける取り組みにチャレンジしています。 今回は仕様記述をするにあたりよく使う重要な記述テクニックである「Promotion」を紹介します。 形式仕様記述とAlloyというツールを知っている人を対象にしています。 もし形式仕様記述やAlloyをご存じない方は、以前私がbuilderscon tokyo 2019で発表したときに使った資料をご覧ください。 Promotionとは 一般にソフトウェアシステムは複数のコンポーネントから構成されます。 システム全体としての状態(以下、システム状態)は各コンポーネントの状態の組み合わせからなります。 たとえどんなに奥深くのどんなに小さ

    仕様記述テクニック「Promotion」の紹介 - DeNA Testing Blog
    usadamasa
    usadamasa 2020/02/19
    なるほどわからん。
  • Agile Testing Days 参加報告 #D3QA #AgileTD / Report on Agile Testing Days

    D3イベント『海外テスト系カンファレンス参加報告』での発表資料です。 https://d-cube.connpass.com/event/155527/

    Agile Testing Days 参加報告 #D3QA #AgileTD / Report on Agile Testing Days
  • 「FF6」の新たなバグを発売25年後に見つけたテスト技術者の腕前

    遊びつくされたゲームからバグを見つけ出す着眼点 エディさんは「バグは何かの条件が重なったときに起こる場合が多い。バグを見つけるときの基的な考え方だ」と言う。特に来は重なることがない条件が重なったときには、ゲーム開発者が想定していない挙動が起こる可能性がある。この考え方に基づいて、シドタイマー持ち込みバグと別のイベントを組み合わせ、低歩数クリアの記録更新ができないか試したという。 バグを見つけ出す方法について、エディさんは次のように話す。「プレー中に発見することは意外と少ない。ゲームで遊んだ後に外出して歩いているときなど、ゲームをプレーしていないときに突然思いつく」。シドタイマーも雪の降る日、喫茶店からの帰り道でひらめいた。「頭の中でFF6のプレーを想像していると『このタイミングでこうしたら、こういう現象が起こるのではないか』とひらめく」(エディさん)。 ひらめいた仮説を基に実機で思いつ

    「FF6」の新たなバグを発売25年後に見つけたテスト技術者の腕前
    usadamasa
    usadamasa 2019/08/13
    “実はエディさんはテストエンジニアが本業だ。2016年に第三者検証を手掛けるSHIFTに入社し、スマートフォン向けゲームのデバッグやテストプレーなどを担当している。”
  • 7payの会見から学ぶソフトウェアテストの7原則 - ブロッコリーのブログ

    目次 目次 はじめに この記事の元ネタ 教訓1:「脆弱性はなかった」という発言 ソフトウェアテストの7原則の1.テストは欠陥があることは示せるが、欠陥がないことは示せない ソフトウェアテストの7原則の7.「バグゼロ」の落とし穴 教訓2:仕様・設計の段階での指摘 ソフトウェアテストの7原則の3.早期テストで時間とコストを節約 教訓3:決済系のサービスに対するテスト ソフトウェアテストの7原則の6.テストは状況次第 おわりに はじめに 話題になっている7payの話を、ソフトウェアテストの知見(ソフトウェアテストの7原則)を使って、反面教師として次に活かせる形にして書いてみます。 ただし、「これを知れば事前に防げる!」と主張したいのではなく、(エンジニアも経営層も)意識して臨まないといけないという意味も込めて書きます。 この記事の元ネタ 教訓の元にした7pay会見の記事はこちら www.itme

    7payの会見から学ぶソフトウェアテストの7原則 - ブロッコリーのブログ
  • QAエンジニアってどんな仕事?~ゲーム開発におけるテストの世界~ - SEGA TECH Blog

    はじめまして。 セガゲームス「龍が如くスタジオ」専属QAエンジニアの阪上と申します。 今回は、QAエンジニアという職種の紹介とゲーム開発におけるテストの話を、「龍が如くスタジオ」での開発の歴史を振り返りながらご紹介したいと思います。 目次 目次 ゲームのテストって何をするの? QAエンジニア仕事内容 (2009年~) 自動プレイテスト (2013年~) QAエンジニアの誕生と加速するテスト環境の自動化 (2015年~) テストの結果分析 (2018年~) テストピラミッドの考察とQAエンジニアリングの未来 まとめ 参考資料 ゲームのテストって何をするの? 題に入る前に、QAエンジニアのQAとは何なのかを説明しておこうと思います。QAは 「Quality Assurance」の略で、日語では品質保証という意味です。ゲーム開発においては、ゲームが正しく動作しているか、バグがないか、ゲーム

    QAエンジニアってどんな仕事?~ゲーム開発におけるテストの世界~ - SEGA TECH Blog
    usadamasa
    usadamasa 2018/12/22
    "自動テストのエラーに対する信頼性が低いと、「このエラーは製品でも起きるの?」と言われて修正されないまま放置されてしまい" わかりみがある。
  • レガシーコードの触り方 / Working Effectively with Legacy Code

    オープンセミナー2017@岡山

    レガシーコードの触り方 / Working Effectively with Legacy Code
  • 既存のAndroidアプリをリファクタリングしていく話

    ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance

    既存のAndroidアプリをリファクタリングしていく話
  • サービス分割時の複雑性に対処する: テスト戦略の話 - クックパッド開発者ブログ

    技術部の taiki45 です。 現在のクックパッドでは、cookpad.com 内のデータを利用するようなプロダクトでも、cookpad.com を提供しているアプリケーション(体アプリケーション)とは別に新規のアプリケーションとして設計・実装しています。また、すでに体アプリケーションの一部として実装されているプロダクトについても、トレードオフを考慮しながら場合によっては、体アプリケーションから独立した別のアプリケーションとして設計・実装することが増えてきています。これらの体アプリケーションや、新規にあるいは体アプリケーションから独立させて設計・実装したアプリケーションのことを「サービス」と呼んでいます。また、この体アプリケーションから独立させることを「サービス分割」と呼んでいます。 制御できないほどの巨大な複雑なまとまりを制御するために、その巨大なまとまりと単純なまとまりに

    サービス分割時の複雑性に対処する: テスト戦略の話 - クックパッド開発者ブログ
  • テスト環境のユーザーをキャラ立ちさせる - Konifar's WIP

    仕事で作ってる『Taptrip』はまだテストを書けていないので、テスト環境で手動で動作確認をしています。これが結構めんどくさいです。 ただ、そうは言ってもテストコードでカバーしきれない部分もあるでしょうし、手動で確認するフローは当分残るんじゃないかと思うんですよね。つまりめんどくさくてもやるしかないわけです。 どうせやるなら何か工夫できないかなぁと思いまして、1年くらい前に工夫の一環として テストユーザーを作り込んでみたら想像以上にいい感じだったので、どんな雰囲気になるのかまとめてみます。 結論を先に言ってしまうと、 テストユーザーを美人とアニメキャラにして作り込んでみたらテスト環境を触るのが楽しくなったよというハックです。自動化みたいな技術的な工夫は一切出てこないです。すみません。 テストっぽくないユーザーを作る テストユーザーの名前が 『テスト01』とかだと見ていても楽しくないので、

    テスト環境のユーザーをキャラ立ちさせる - Konifar's WIP
    usadamasa
    usadamasa 2015/12/26
    “そもそも手動テストしなくていいように自動化しようよっていうのはその通りなんですが、やはり全部をカバーするのは大変なんですよね。低コストで少しでも楽しくなるなら儲けものだと割り切って、ちょっと試してみ
  • アジャイルでもWFでも共通する「開発やテストのモデル」-全てのソフトウェアテストを再定義する- #SWTestAdvent - うさぎ組

    はじめに これはソフトウェアテストあどべんとかれんだー 2014 の17日目の記事です。 id:a-suenamiがテストとは開発プロセスそのものである #SWTestAdvent - assertInstanceOf('Engineer', $a_suenami)で僕が考えているモデルについて紹介してくれていたので、ざっくりとですが僕の方から「現状の僕が捉えているソフトウェア開発。そしてテスト。」について紹介します。これはここ数年における僕の最高傑作とも言えるコンテンツに関するエントリです。(言いすぎだ 概要 言い過ぎればプロダクト開発というものは「Define, Build, Explore, Measure」という活動から成立していると言えます。これに知識や手法やプロセスをあてはめると「何をやるべきか」「何が足りていないか」がわかりやすくなります。この記事ではそういった開発やテストを

    アジャイルでもWFでも共通する「開発やテストのモデル」-全てのソフトウェアテストを再定義する- #SWTestAdvent - うさぎ組
    usadamasa
    usadamasa 2014/12/17
    最初PDCAみたいなプロセスの話をしてるのかなと思ったけどそうじゃなかった。ソフトウェア開発活動を分類していくフレームワークの話。
  • 1