Zennの「Test」のフィード

フィード

記事のアイキャッチ画像
ReactのhandleSubmitが肥大化したので、バリデーションを純粋関数に切り出した
Zennの「Test」のフィード
はじめにReact でフォームを書いていると、handleSubmit がいつの間にか膨れ上がっていることがあります。最初は数行のはずでした。そこに「メールが空ならエラー」「形式が正しくなければエラー」「パスワードが短すぎたらエラー」「成功したら API 呼ぶ」「終わったら画面遷移する」と、足していくうちに、検証ロジック・状態更新・送信処理・画面遷移が一つの関数の中に同居していきます。動作的には全く問題ないのですが、あとから読みづらく、テストしづらく、変更しづらい関数になってしまいます。この記事では、自分が実際に手を動かしたサインアップ画面を題材に、フォームバリデーションを ...
11時間前
記事のアイキャッチ画像
RSpecのCIを2倍高速化するためにやったこと
Zennの「Test」のフィード
はじめに私たちのプロダクトでは、RSpec テストを GitHub Actions で 20 並列で実行しています。テストの課金時間の合計が 約10時間 に達しており、PRのフィードバックサイクルや Actions の課金コストに影響していました。この記事では、CIの高速化に取り組んだ過程と成果をまとめます。なお、この記事では2種類の時間を区別して扱います。課金時間: 全並列ジョブの実行時間の合計。GitHub Actions の課金対象となる時間実行時間: CIの開始から完了までの実際の経過時間。開発者が待つ時間に相当 CI構成の概要まず、改善前のCI構成を...
1日前
記事のアイキャッチ画像
Playwright 1.60 の新機能を試してみた
Zennの「Test」のフィード
はじめにPlaywright 1.60 がリリースされました🎉今回は主要な新機能を、実際に動かせるデモアプリ(Next.js)を使いながら紹介します。デモアプリのリポジトリ:https://github.com/KoyoMiyazaki/playwright-playground 🌐 HAR recording on Tracing — Tracing.startHar() / tracing.stopHar()context.tracing.startHar() でネットワーク通信を HAR ファイルに記録できます。await using と組み合わせると、スコープ...
2日前
記事のアイキャッチ画像
スクラムフェス新潟2026 にゴールドスポンサーとして協賛しました
Zennの「Test」のフィード
こんにちは、Mikiです。ナレッジワークで技術ブランディング全般を担当しています。2026年5月8日(金)〜9日(土)、新潟市の朱鷺メッセにて開催された スクラムフェス新潟2026 に、ナレッジワークはゴールドスポンサーとして協賛しました。QAエンジニアを主体に3名で参加してきたので、その様子をお伝えします。https://www.scrumfestniigata.org/ スクラムフェス新潟とはスクラムフェス新潟は、アジャイルコミュニティの祭典として全国からエンジニアが新潟に集まるイベントです。テストエンジニアリングを中心に、生成AI時代の品質設計・アジャイル変革・メンタルヘ...
2日前
記事のアイキャッチ画像
Go 実務の基礎を体系的に整理する
Zennの「Test」のフィード
goroutine・エラーハンドリング・interface・context など、Go を実務で使う上で押さえておきたいトピックを章ごとに整理したリファレンスです。
3日前
記事のアイキャッチ画像
「テナント分離テストを書き忘れたらマージできない」をCIで実現する
はてなブックマークアイコン 1
Zennの「Test」のフィード
はじめにマルチテナントSaaSにおいて最も致命的なバグは「他社のデータが見えてしまう」ことです。認可チェックの漏れやEloquentスコープの付け忘れによって、企業AのユーザーがAPIを叩いたら企業Bのデータが返ってきた——これは機能のバグではなくセキュリティインシデントです。私たちのプロダクトでも、テナント分離はQA・レビュー・実装の各段階で「意識する」運用をしていました。しかし、明確なプロセスとしては組み込まれておらず、開発者の注意力に依存している状態でした。この状態を「CIで自動的に検知する仕組み」に変えるまでの試行錯誤を紹介します。 やりたかったこと目指したのは...
4日前
記事のアイキャッチ画像
Agent Skillsで使える単体テストガイドライン
Zennの「Test」のフィード
概要Agent Skillsなどに組み込んで使える単体テストのガイドラインサーバサイド寄りだが、クライアントサイドでもある程度は参考になる 参考文献単体テストの考え方/使い方GoogleのソフトウェアエンジニアリングDRY vs DAMP in Unit Tests 単体テストガイドラインこの文書は、単体テストコードを生成・レビューする際に従うべきガイドラインを示すものである。すべてのテストは、可読性・一貫性・保守性を重視して記述すること。 テスト構造の基本 Given-When-Thenパターンの適用すべてのテストケースは以下の3つのフェーズ...
5日前
記事のアイキャッチ画像
SLO×カバレッジ加速度のクロスオーバー
はてなブックマークアイコン 1
Zennの「Test」のフィード
はじめにSLO(Service Level Objective)、という言葉を聞いたとき、明確な像を持って語れるでしょうか。私はSREやインフラの文脈で何度か耳にしてきましたが、概念として知っている程度で、自分の現場で深く実践してきたわけではありませんでした。そのSLOを学び始めたきっかけは、最近知ったenabling SREという考え方です。専任のSRE組織がすべての運用を担うのではなく、開発チーム自身がSREプラクティスを身につけて自走できるようになることを支援する役割を指す概念で、Team Topologiesの「イネーブリングチーム」の文脈とも重なります。これを知って...
5日前
記事のアイキャッチ画像
Microsoft 365 Agents SDK の単体テストができるようになりました
Zennの「Test」のフィード
はじめにMicrosoft 365 Agents SDK v1.5 で、新しく Agent Testing Framework (Microsoft.Agents.Builder.Testing) が追加されました。これは Microsoft Bot Framework で提供されていた次のクラス群に代わるものです。Microsoft.Bot.Builder.Adapters: TestAdapter クラスおよび TestFlow クラスMicrosoft.Bot.Builder.Testing: DialogTestClient クラスAgent Testing Fr...
5日前
記事のアイキャッチ画像
テスト投稿
Zennの「Test」のフィード
はじめてのZenn投稿これはGitHub連携のテストです。
6日前
記事のアイキャッチ画像
[EXE] 新しいプロジェクトで品質を上げるときにやること・目指すゴールライン
Zennの「Test」のフィード
新しいプロジェクトで品質を上げるときにやること・目指すゴールライン 1. 概要 執筆の意図解決したい課題品質改善を任されたとき・途中参加したプロジェクトで、何を確認しどの順番で動けばよいかわからないという状況この記事のゴール品質改善における自分の考え方と進め方を言語化することで、同じ課題を持つ人の参考になること 要約まず何を確認するか、どの順番で整備するかという思考の型は、プロジェクトが変わっても再現できます。品質改善はフェーズを線形に完了させるものではなく、振り返りを回しながら改善し続けるサイクルです。完璧な品質ではなく運用として安全に回...
6日前
記事のアイキャッチ画像
JSTQB Foundation Levelに合格しました。勉強方法と実際に受験した感想
Zennの「Test」のフィード
はじめにJSTQB Foundation Levelに合格しました。この記事では、これからJSTQB Foundation Levelを勉強しようとしている方向けに、私が実際に行った勉強方法や、試験を受けて感じたことをまとめます。私はテスト専門の業務に深く関わっているわけではないため、最初は知らない用語も多くありました。ただ、問題を解きながら少しずつ用語や考え方に触れていくことで、テストに関する基礎知識を体系的に学ぶことができました。これから受験する方の参考になればうれしいです。 JSTQB Foundation LevelとはJSTQB Foundation Lev...
7日前
記事のアイキャッチ画像
agent に E2E テストを書かせる時、実装 diff を context として渡す設計を入れた話
Zennの「Test」のフィード
はじめにCodens では Purple という orchestrator が「develop step」を回して実装させ、その出力を Blue が受けて E2E テストを書く、という多段の agent 構成にしている。これがそこそこ動いてはいたのだが、ずっと違和感があった。Blue が生成してくる E2E が「Purple がさっき変えた箇所」にぴったり寄ってこなくて、機能ベース、画面ベースで広く撒いてしまう。Blue が「何を変えたか」を知らないから、当然と言えば当然だった。最初は Blue 側の prompt を強めればいいかと思って色々試したのだが、根本解決にはならなくて...
9日前
記事のアイキャッチ画像
効率の良いテストデータ作成はSQLで管理するのが実務では強い
Zennの「Test」のフィード
はじめにこの記事では、テストデータを効率良く作る方法として、SQL で管理するやり方を整理します。結論を先に書くと、手動検証やバッチ検証では、テストデータ作成を SQL に寄せた方が扱いやすいことが多いです。特に次のような場面を対象にしています。バッチの手動検証をしたい既存データを消して毎回同じ状態を作りたい複数テーブルにまたがる前提データをまとめて用意したい新規テーブルの検証なので、テーブル作成から入れたいテストデータ作成の方法はいくつかあります。管理画面から手で登録するアプリの Seeder を使うテストコード内でデータを作るSQL を直接流すど...
11日前
記事のアイキャッチ画像
AI agent の「半分しかやってない」を検出するのに、diff の正規表現を入れて剥がした話
Zennの「Test」のフィード
はじめにAI agent(うちでは Claude Code)に「このチケットを実装しろ」と渡すと、たまに「動いた、commit した、push した」までは進むのに チケットの半分しか触ってない ことがある。テストファイルだけ書いて実装ファイルがない、とか、実装はしたがマイグレーションが抜けてる、とか。exit_code は 0、commit もある、PR も開ける。下流から見ると成功にしか見えない。この「形式上は完了、内容は未達」をどう検出するかという問題に、自分は半年かけて 2 回設計を変えた。最初は agent が出した diff の形を見て、チケット本文に書かれてるファイ...
12日前
記事のアイキャッチ画像
ピラミッドの形に捕らわれず、何を守るかを問う — テスト戦略の見直し
Zennの「Test」のフィード
はじめに本記事は、テストコードとAIをめぐるシリーズの9本目です。前作までと同じく、シリーズ本編から少し離れた単発記事として書いています。テーマはテストピラミッド。Mike Cohn が提唱したことで知られる「ユニットを多く、統合を中ぐらい、E2Eを少なく」という階層構造の話です。本記事ではこの古典的な議論に、近年のフロントエンド系で言及されている派生(アイスクリームコーン型、テスティングトロフィー)を重ねながら、自分の現場のテスト戦略を見直すための視座を整理してみます。書き手の現場ではいま、ユニットテストはそれなりに書かれていますが、E2Eは未整備のまま、QAメンバーが手動の...
12日前
記事のアイキャッチ画像
RubyKaigi2026 初参加レポート
Zennの「Test」のフィード
はじめにこんにちは!りゅうです!2026年4月22日~24日に行われたRubyKaigi2026に参加させていただきました!その内容を簡単にまとめようと思います!別途一番刺さったセッションについては別記事でより深掘りする予定です。本記事では、以下の内容を書かせていただきます。私が聴講させていただいたセッション・ひとことメモセッションの中で印象に残ったものをいくつか紹介Drink UpやAfter Eventの様子購入した本知らなかった・学んだことここが初参加の人には参考になるかも!今年のRubyKaigiの雰囲気をお伝えして、次に参加しようと考えている...
12日前
記事のアイキャッチ画像
カバレッジ100%の先にある問い — ミューテーションテストを学ぶ
Zennの「Test」のフィード
はじめに本記事は、テストコードとAIをめぐるシリーズの8本目です。前作までと同じく、シリーズ本編から少し離れた単発記事として書いています。テーマはミューテーションテスト。過去記事「AI時代にバックエンドエンジニアが磨くべきテスト設計力」の第4章で、私は次のように書きました。Mutation Testingは、コードを機械的に改変し、テストが落ちるかを検証する手法です。(中略)これらは、私が業務で本格的に運用しているわけではないので、ここでは名前と射程だけを記しておきます。本記事は、そのとき名前と射程だけで終わらせた話を、改めて掘り下げる学習記録です。私自身、まだ業務で運用...
13日前
記事のアイキャッチ画像
フレーキーテストの正体と向き合い方 — ReRunで凌いでいた自分がいま考えていること
Zennの「Test」のフィード
はじめに本記事は、テストコードとAIをめぐるシリーズの7本目です。前作「テスト名は仕様の1行 — AIに命名を任せられる環境を作るまで」と同じく、シリーズ本編から少し離れた単発記事として書いています。テーマはフレーキーテスト(flaky test)です。同じコードに対して、CIで落ちたり通ったりする不安定なテストのことです。私自身、過去に何度も格闘してきて、結局根本対処できずに「ReRunで凌ぐ」というやり方で逃げ続けた経験があります。本記事は、その苦い体験を一つ深掘りしながら、いまならどう向き合うかを構想として書き残す試みです。想定読者として念頭に置いているのは、2〜7年...
14日前
記事のアイキャッチ画像
初心者に向け:Webパフォーマンスのテスト方法
Zennの「Test」のフィード
ポートフォリオサイトを作り終えたとき、「見た目はそれっぽくなったけど、品質的にはどうなんだろう?」と気になりました。調べてみると、ChromeのデベロッパーツールにはLighthouseというパフォーマンステストツールが標準で搭載されており、特別なセットアップなしに手軽に使えることがわかりました。この記事では、Lighthouseの基本的な使い方と結果の読み方を、実際の画面キャプチャとともに紹介します。 1. 本番ビルドでテストする開発中によく使う pnpm dev(開発モード)のままLighthouseを実行すると、コードが最適化されていない状態のためスコアが実態よりも大きく...
15日前