テスト・QA関連のブログの更新をまとめた
RSSフィードを配信しています

Slackに貼り付けると更新を受け取ることができます


テスト・QA関連イベントカレンダーもぜひご覧ください

直近1週間の更新

8/23 (日)

記事のアイキャッチ画像
AIに仕様だけ渡してテストを書かせたら全部緑。それでも実装変更は3件必要だった ブログのファビコン Zennの「Test」のフィード
前の記事に、まっとうな反論をもらった前回、AI生成コードをどこまで理解してからマージするかという基準を書きました。その中に「テストの循環問題」という節があって、こう書いていました。エージェントは、実装に合わせたテストを書きます。(中略)循環を断つ方法はあります。実装とテストを、別セッションで独立に生成することです。これに対して、こういう指摘をもらいました。テスト生成って別セッションって書かれてるけど、普通に実装依頼するとテストまで作ってくれるし、レビューで担保する部分なんじゃね?まっとうな指摘です。実際、エージェントに実装を頼めばテストは勝手に付いてきます。それをわ...
3時間前
記事のアイキャッチ画像
打った文字の一部だけが消える — ブラウザ自動化の type が半角英数字を落としていた ブログのファビコン Zennの「Test」のフィード
個人の自動化プロジェクトで、ブラウザを操作するエージェントに SNS の返信を入力させている。エディタの入力欄に type で本文を打ち込み、送信ボタンを押す、それだけの処理だ。ある日、送信の直前に入れておいた検査がこう鳴った。5文字目で違う: 入った='を' 期待='1' / 長さ 178 vs 190打ったはずの本文と、入力欄に実際に入った本文が 12文字ずれていた。消えていたのは、半角英数字だけだった。 症状このときの実測がこれだ。送ったつもり: 「このまま14を使い続ける」…3つの案…バッテリー89%…iCloudは容量を下げて実際に入った: 「このままを使い続...
4時間前
記事のアイキャッチ画像
テストは全部緑だった。エラーを出さずに壊れていた6つのバグと、その捕まえ方 ブログのファビコン Zennの「Test」のフィード
前作で、こう書きました。エラーが出ないことは、動いていることの証拠になりません。MapLibre の globe 投影が一度も適用されていなかった話です。if (map.setProjection) というガードが常に偽で、地球儀のつもりで平面の地図を何週間も眺めていました。テストは全部緑でした。https://zenn.dev/sg5555/articles/orbis-osint-globeその前作を書くために、スクリーンショットを撮ろうと本番を開きました。AI が生成する「ワールド・ブリーフィング」の欄に、57日前の世界が表示されていました。GitHub Actions...
6時間前
記事のアイキャッチ画像
検証は全部PASSした。それでも、生成したPDFの文字は見えなかった ブログのファビコン Zennの「Test」のフィード
仕事でそのまま使えるPDFを、自動で作れる仕組みをAIと一緒に作っていました。作るだけではなく、正常に作れたかの確認もAI側で行います。ある日、その仕組みから「完成した」と判断できるPDFができました。生成できているビルドも通っている構造にも問題はない文字が入っていることも確認できている検証もすべて通っているところが、実際の端末でPDFを開いてみると——文字が、見えない。一部が欠けているとか、少し文字化けしているとか、そんなレベルではありません。見えるはずの文字が、画面に出てこない。しかも、もっとまずいことが分かりました。私はこれを2回出していました。な...
12時間前
記事のアイキャッチ画像
Playwright CLIでWebアプリケーションを自動テストして詰まった25の壁とその解決方法 ブログのファビコン Zennの「Test」のフィード
はじめにReact + MUI + Axios + React Query で構築された業務Webアプリケーションに対して、Playwright CLI(playwright-cli)を使った画面単体テストの自動化に取り組みました。一般的なPlaywrightのテストコード(@playwright/test)ではなく、AIエージェントが対話的にブラウザを操作しながらテストを進めるという運用を前提としているため、通常のE2Eテストではあまり遭遇しない制約に数多くぶつかりました。本記事では、そこで実際に発生した25個の技術的課題とその解決方法を、原因の説明つきで整理して共有します。...
1日前

8/22 (土)

記事のアイキャッチ画像
Go 1.27のhttptest.NewTestServerをAPIクライアントのテストで使ってみて分かったこと
はてなブックマークアイコン 5
ブログのファビコン Zennの「Test」のフィード
Go 1.27でnet/http/httptestにhttptest.NewTestServerが追加されました。httptest.NewServerと名前はかなり似ていますが、実際にAPIクライアントのテストで使ってみると、テストコードがシンプルになるだけでなく、これまでテストできなかった箇所までテストできるようになる変更だと感じました。自分がメンテナンスしているnotify_slackでもhttptest.NewServerからhttptest.NewTestServerへ変更したので、そのときに分かったことをまとめます。https://github.com/catatsuy/...
1日前
記事のアイキャッチ画像
動作確認用の下書きです ブログのファビコン Zennの「Test」のフィード
release-deskアプリの公開ボタン動作確認用の下書きです。
1日前
記事のアイキャッチ画像
AIにPlaywrightのE2Eテストを書かせたら、「PASSしたテスト」ほど疑うべきだった話 ブログのファビコン ソフトウェアテストタグが付けられた新着記事 - Qiita
AIにPlaywrightのテストを書かせてPASSした。でも、そのテストは本当に確認したかったことを確認しているのか。業務管理アプリを開発しながら、PlaywrightによるE2Eテストを作っています。テストコードの作成にもAIをかなり使いました。最初は、「AIに...
1日前
記事のアイキャッチ画像
「動く」と「解ける」は別物。AIエージェントに150問解かせて見つけた本当のバグたち ブログのファビコン Zennの「Test」のフィード
自動テストは全部緑、でも人間は解けないかもしれない個人開発しているRouteLabは、CCNA/CCNPのネットワーク設定をブラウザ上のCLIで練習できるシミュレーターです。今日、その中の「トラブルシューティング系」問題150問すべてで、ある検証作業を完走させました。RouteLabには元々、自動テストがそれなりの数あります。コマンドが仕様通りにパースされるか、採点ロジックが意図通りに動くか、不正解の選択肢を選んだ後に「詰み」状態にならないか——これらは全部、機械的に自動テストできます。実際、1,000件近いテストケースを毎回CIで流しています。でも、あるとき気づきました。この...
2日前
記事のアイキャッチ画像
dev でだけ 404 になる Next.js の API route を「契約テスト」で守る ブログのファビコン Zennの「Test」のフィード
こんにちは。小学生向けのニュースサイト、こどもニュースをつくっています。公開サイトとは別に、ローカル専用の管理画面があります。DB を眺めたり、記事を確認したり、生成コマンドを起動したりするための Next.js アプリです。ここで何度か踏んだのが、API のルートが 404 になる回帰でした。ビルドは通り、型検査も通り、それでも dev で開くと 404 が返ってきます。 何が起きるかNext.js の App Router では、route.ts から GET / POST などの決まった名前で関数を export します。それ以外の値を export すると、ルートとして...
2日前

8/21 (金)

記事のアイキャッチ画像
Deno 2.9のDeno.test.each()とt.assertSnapshot()をnode:testと書き比べた ブログのファビコン Zennの「Test」のフィード
はじめにDeno 2.9 でテストランナーに Deno.test.each() とスナップショット用の t.assertSnapshot() が入りました。自分はふだん node:test を使っていて、パラメータ化テストを書くときは毎回 for...of とテスト名のテンプレート文字列を手で書いていたので、標準機能でそこが埋まるならどれくらい楽になるのか気になって手元で試しました。やったことは、同じ対象コード(add() と renderHeader())に対して Deno 版のテスト4本と Node 版のテスト4本を書き、行数・テスト名の出方・失敗時の出力・スナップショット...
2日前
記事のアイキャッチ画像
E2EのFixture生成とAssertを、1つの定義から導く ブログのファビコン Zennの「Test」のフィード
AIエージェントがブラウザを操作できるようになり、E2Eテストの画面操作コードは書きやすくなりました。画面を開き、DOMを調べ、操作し、失敗した箇所を修正するまでを1つのループの中で完結させることができるようになり、E2Eテストの割合を増やしているチームも多いのではないでしょうか。しかし、E2Eテストのコストは画面操作コードだけではありません。操作前にどのようなデータを用意するか。操作後にどのような状態なら正しいとするか。テストが増えれば、FixtureとAssertの定義も増えていきます。もちろん、この部分もAIに任せることはできますが、画面操作と同等かそれ以上に保守に苦労する部分で...
2日前
記事のアイキャッチ画像
「泣いている赤ちゃんが何人いるか」を数えるアプリを、三つ子育児のために作った話 ブログのファビコン Zennの「Test」のフィード
今年、三つ子が生まれました。泣き声を検知して、いま何人泣いているかで流す音楽を変えるWebアプリを作っています。何人泣いているごとにどの曲を流すかは、使う人が自由に設定できます。https://eeen-babeat.sakopon.org/アプリを作った経緯とか、実際に使ってみて生活がどう変わったかはnoteに書きました。そちらもぜひ読んでください。https://note.com/__sakopon/n/n717f474a5649この記事では技術の話、具体的には実装の解説ではなく、何を選んで何を捨てたかの記録を書きます。特に「何人泣いているかをどう推定するか」の精度の試行錯...
2日前
記事のアイキャッチ画像
自作AIベンチマークの続き — 最新の小さいモデルが、古い大きいモデルの12倍だった ブログのファビコン Zennの「Test」のフィード
美容系勤務独学初心者マリー・アントワネット系エンジニア目指してます!今回は 前回の宿題が片付いていない なら モデルを4つ足して測ればいいじゃない 👸🍰です。読了時間の目安:約 8〜10分(前回の記事を読んでいなくても大丈夫です)!3行まとめ前回の自作ベンチに4モデル追加し、7モデル・10走行に広げました🧪「モデルの差か、ツールの差か」が解けました。 同じモデルを2環境で走らせたら数字が完全一致⚖️そして 自分のベンチに穴が空いていました。 1体だけ、答えを11回見ていました😇📌 この記事でわかること:世代とモデルサイズどちらが効くか/実行環境の影響の切り分...
2日前
記事のアイキャッチ画像
AIにテストを書かせる前に、何を確かめ、何を確かめないかを決める ブログのファビコン Zennの「Test」のフィード
AIコーディングエージェントは、短時間で多くのテストを書けます。便利な一方で、「網羅的に書いて」と頼むだけでは、同じことを何度も確かめるテストや、実装の細かな形を固定するテストまで増えます。テストが増えても、どの不具合を防ぎたいのかは曖昧なままです。そこで僕は、AIへ実装を任せる前に、書くテストと書かないテストを決めました。この記事では、ログインした本人のデータだけを扱うWebアプリを例に、僕が何を考えてテストを選んだのかを紹介します。 最初に、守りたいことを3つに絞った例に使うのは、自分のタスクを一覧、取得、更新できるアプリです。画面からの読み書きを受けた後、タスクを扱う...
2日前
記事のアイキャッチ画像
Structured Playwright —— 変更に強いLocatorの設計 ブログのファビコン Zennの「QA」のフィード
はじめに:変更追随性のもう一面この記事はStructured Playwright —— 継続性から設計するE2Eテストの4層構造とハーネスの続編にあたります。前回はE2Eテストを4層に分けて「変更が届く範囲を設計して管理する」話を書きました。ボタンのラベルが変わればPage Objectの1行、手順が変わればActionの1メソッド。変更の種類ごとに届く層を決めておくことで、テスト本体を変更から隔離する、という「構造」の話です。前回の記事にはある前提があります。Page Objectの中に書かれたLocator自体が、変更に強い書き方をされていることです。層を分けると、UI...
2日前
記事のアイキャッチ画像
GitHub ActionsのGoテストを8分→3分弱に短縮 —— setup-goのキャッシュ共有を見直す
はてなブックマークアイコン 1
ブログのファビコン Zennの「Test」のフィード
こんにちは。ソフトウェアエンジニアの inari111 です。RemitAidではバックエンドにGoを採用しています。本記事では、キャッシュを見直し、GitHub Actionsのテストジョブの実行時間を約8分から3分弱に短縮した事例を紹介します。 前提:バックエンドのテスト構成まず、バックエンドの3種類のテストについて説明します。ユニットテストドメイン層の関数を中心に書いているユニットテストです。go test ./... で実行します。DBを使ったインテグレーションテストアプリケーション層に書いているビジネスロジックとDBの整合性を検証するためのテストです。テス...
2日前
記事のアイキャッチ画像
実装とテストを同じAIに書かせると誤解が二重になる:AIレガシー刷新を新旧比較で検証する ブログのファビコン Zennの「Test」のフィード
この記事のまとめテーマ: 既存ソースや仕様書をもとに AI が刷新した実装を、旧システムと自動で突き合わせて検証する手法結論: 期待値を人にも AI にも書かせない。実行時に旧システムから取る。この 1 点で、AI 実装の検証は大部分を機械化できる紹介する設計原則は 5 つある。期待値を人にも AI にも書かせない実装の自由度は許し、出力だけを縛る差分を隠す仕組みを作らない検証範囲の拡張を AI に任せられる形にする事故は規律ではなく構造で止める 対象読者AI コーディングツールでレガシーシステムの刷新(リライト/リアーキテクト)を進めている人移...
3日前
記事のアイキャッチ画像
AIによる破壊的修正ループを防ぐ変更管理と回帰テスト ブログのファビコン ソフトウェアテストタグが付けられた新着記事 - Qiita
AIによる破壊的修正ループを防ぐ変更管理と回帰テストAIへ一つの不具合修正を依頼した結果、すでに正常だった別の機能が壊れることがあります。壊れた箇所を再びAIへ直させると、今度は最初に修正した箇所が元へ戻る。修正回数は増えているのに、完成へ近づかず、同じ範囲を行き来し...
3日前
記事のアイキャッチ画像
型チェックを0エラーにしたら、UIの表示バグとビルド落ちの種が出てきた ブログのファビコン Zennの「Test」のフィード
はじめに個人開発のツールサイト(Astro / 5言語 / 491ページ)で、放置していた型エラーをまとめて潰しました。最初は「実行時に問題ないなら後回しでいい」と思っていた作業です。ところが片付けていく過程で、型エラーがそのまま実バグを指していたケースがいくつも出てきました。この記事はその記録です。 前提:tsc だけでは Astro を検査できないAstroプロジェクトでは npx tsc --noEmit が使えますが、これは .astro ファイルの中身を見ません。それどころか、.ts から .astro を直接importしている箇所で必ず落ちます。error ...
3日前
記事のアイキャッチ画像
3件のpytestを眺めていて、「これ、本当に守れてるのか?」と思った日 ブログのファビコン Zennの「Test」のフィード
個人開発しているFlaskアプリに、pytestは入っていました。GitHub Actionsも動いていました。実行すれば、3 passedと表示される。当時の自分としては、「pytestも導入したし、CIも動いている。最低限のテスト環境はできた」くらいの感覚だったと思います。でも、アプリのセキュリティやデータベース周りを見直している途中で、ふと気になりました。この3件のテストは、いったい何を守っているんだろう?そこから、自分のpytestに対する見方が少しずつ変わっていきました。この記事は、pytestの書き方を詳しく解説するものではありません。実際のコードや...
3日前

8/20 (木)

記事のアイキャッチ画像
7種類の保存先を1つの設定型に押し込まない:Chrome拡張のCapabilityモデル ブログのファビコン Zennの「Test」のフィード
私はブラウザー拡張 Kliplet を開発している Danila Pryadko です。この記事はインストールの勧誘ではなく、性質の異なる保存先を同じ拡張機能から扱うとき、設定画面と保存処理の間にどんな契約を置くかを考える設計メモです。日本語の表現と構成には AI の補助を使い、公開 UI と公開説明に関する事実は私が確認しました。以下の型と疑似コードは説明用の一般モデルであり、Kliplet の非公開実装を示すものではありません。 「保存先」という名前だけが共通しているノートサービス、ローカルの Markdown ファイル、個人用知識ベースは、利用者から見ればどれも「保存先」で...
3日前
記事のアイキャッチ画像
テストコードで性格が出る? ChatGPT・Claude・Gemini三者三様(3部作の3作目) ブログのファビコン ソフトウェアテストタグが付けられた新着記事 - Qiita
前回の続きでは前回の意見をChatGPT・Claude・Geminiの順番で聞いていきますChatGPTなぜAIごとに解釈が割れたのか?今回の結果を見ると、単純に「AIごとに性格が違う」だけではなさそうです。一番大きいのは、仕様書に曖昧さが残っていたことだと...
3日前
記事のアイキャッチ画像
AI エージェントの UI 実装を確認を Maestro に確認させる
はてなブックマークアイコン 2
ブログのファビコン Zennの「Test」のフィード
TL;DRClaude Code が実装した UI の動作確認を、screencap の目視確認から Maestro のフロー実行に置き換えた同一の検証フローが中央値 70秒から 28秒前後になり、assertVisible による厳密な検証も手に入ったMaestro MCP には長時間セッションでデバイス接続が無効になる既知の不具合があるため、エージェントには CLI (maestro test) を使わせるのがおすすめ はじめに - screencap 目視確認の限界Claude Code のような AI コーディングエージェントに UI を実装させると、動作確認...
3日前
記事のアイキャッチ画像
Trace-Based Execution-Level Observability of VDM-SL Specifications ブログのファビコン arXiv Query: search_query=all:"software testing"&id_list=&start=0&max_results=10
VDM has been pursuing rigorous verification through mathematical theorem proving and software testing via simulated execution. Animation through an interpreter enables validation of the specification to ensure it meets the required functionality. Step-by-step execution in a debugger also allows the user to follow the internal behavior of operations. In this paper, we propose the recording and utilization of execution traces of assignments, operation calls, and return statements to make the inter
4日前

8/19 (水)

記事のアイキャッチ画像
Structured Playwright —— 継続性から設計するE2Eテストの4層構造とハーネス
はてなブックマークアイコン 24
ブログのファビコン Zennの「QA」のフィード
はじめに:E2Eテストは大きくなるE2Eテストは運用を続ければ必ず大きくなります。スプリントごとに要件が積み上がるのだからそれ自体は健全なことです。問題はその大きくなり方。Playwrightのデフォルト構成では、テストが増えるときに同じ記述——Locator、操作手順、待機、検証——がコピーで広がっていき、結果2つの状態に誘引されていきます。変更追随性が下がる —— UIや手順のひとつの変更が、散らばった記述の数だけ同時に届く。1つの機能修正で変更箇所が各所にわたる。レビュー性が下がる —— どこで何が使われているかが追いにくくなり、レビューが「コードの良し悪しの主...
4日前
記事のアイキャッチ画像
エムスリー QAチームのこれから2026
はてなブックマークアイコン 39
ブログのファビコン QA - エムスリーテックブログ
エンジニアリンググループ GM の窪田です。 生成AIの急速な進化により、ソフトウェア開発のあり方は大きく変わりつつあります。開発の生産性が飛躍的に向上する一方で、コードレビューやテスト工程などレビュー・テストの必要なコードやドキュメントの量はどんどん増えています。量が増えたにも関わらず求められる品質についてはこれまでと同等もしくはそれ以上となってきています。品質保証プロセスをどのように改善すべきか、AI を用いた品質保証プロセスがどのようになるかなどを検討する必要があります。 この記事では、そうした環境変化の中で私たちQAチームがどのような未来像を描いているのか、そしてどのようなロードマップ…
5日前
記事のアイキャッチ画像
生成AIをSES現場で使う方法 数学研究から学ぶ仮説・検証・反例探索 ブログのファビコン ソフトウェアテストタグが付けられた新着記事 - Qiita
はじめに数学の難問にAIを使う研究では、AIが出した答えをそのまま正しいとしているわけではありません。AIに候補を幅広く出させ、プログラムや形式的な検証手段で確かめ、最後は専門家が意味を判断します。この考え方は、SESエンジニアの仕事にも応用できます。例えば、...
5日前
記事のアイキャッチ画像
M&A後のプロダクトにQAはどう伴走するか ─ カラオケBanBanへのQA導入から自動化までの2年間 ブログのファビコン Zennの「QA」のフィード
こんにちは、Platform Engineering部 QA マネージャーの安藤です。私たちGENDAは「2040年、世界一のエンタメ企業へ」を「Vision/野望」に掲げ、その実現に向け、連続的なM&Aを成長の軸の一つとしています。それに伴い、GENDAには急速な事業拡大に加え、プロダクト数も多く、その事業内容も多岐にわたるという特徴があります。そのため、GENDAにおけるプロダクトの品質保証を担う私たちは、インプロセスQAではなく、横断的にプロダクト開発に伴走するPlatform Engineering部の一員としてQAチームを組成し、品質改善活動を行っています。本記事...
5日前
記事のアイキャッチ画像
そのグリーンは信じていいのか — 正しさを仕組みにして、その仕組みも疑う
はてなブックマークアイコン 1
ブログのファビコン Zennの「QA」のフィード
はじめにこんにちは!TOKIUMでQAチームのリーダーをしている西田です。4月に「QAチームのナレッジを『ハーネス』にする」という記事で、テスト設計の自動化を書きました。仕様書やソースコードから、テスト観点とテストケースを一気通貫で生成するパイプラインの話です。https://zenn.dev/tokium_dev/articles/705334e2f6ac10あの記事の結びに、宿題をいくつか残していました。中でも大きかった宿題は2つ。「実行結果のフィードバックループ」と「E2Eテスト自動化との接続」です。この4ヶ月は、主にこの2つに取り組んでいました。テスト実行の...
5日前

8/18 (火)

記事のアイキャッチ画像
AIエージェント10体で「仮想QAチーム」を組んだ話
はてなブックマークアイコン 3
ブログのファビコン Zennの「QA」のフィード
!この記事で使うものClaude Code — Anthropic社が提供するターミナル上で動くAIコーディングアシスタント。チャット形式でファイル操作・コード生成・分析などができるカスタムエージェント — Claude Codeに「専門家の人格」を与える仕組み。Markdownファイル1つで、名前・得意分野・使えるツール・AIモデルを定義できるこの記事では、このカスタムエージェントを10体作って「仮想チーム」にした話をする QAチームが1人しかいない問題自分はビットキーでソフトウェア品質戦略を担当している。品質データの分析、Qase[1]の運用設計、ダッシュボー...
6日前
記事のアイキャッチ画像
プログラミング未経験の私がAIでWebサービスを作って3ヶ月半。数字を全部出します ブログのファビコン Zennの「QA」のフィード
私は**ソフトウェアのテストエンジニア(QA)**です。プログラミングの経験は、始めた時点でほぼゼロでした。強いて言えば1〜2ヶ月、Excelは多少使える、その程度です。その状態からAIに聞きながらWebサービスを作って公開し、3ヶ月半が経ちました。作ることは、想像していたよりずっと簡単でした。難しかったのは、そのあとです。!先に結論3ヶ月半で 約140ページを公開した週の訪問者は 約65人、売上は 0円、月額コストは 約300円作る・公開する・整えるは全部できた。人に来てもらうことだけができていない個人開発の記事で数字を出す人はあまりいないので、全部出します。...
6日前

8/17 (月)

記事のアイキャッチ画像
環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携) ブログのファビコン Ranorex Blog - テスト自動化ツール 『Ranorex』
テスト環境の違いにより、人の目では判別しにくい微細な差異が原因で画像検証が失敗するケースがあります。OSSツールであるOpenCVとRanorexを連携し、OpenCVの高度な画像検証アルゴリズムを活用することで、微細な […]The post 環境差に対応した柔軟な画像比較 (Ranorex + OpenCV連携) first appeared on テスト自動化ツール 『Ranorex』.
7日前
記事のアイキャッチ画像
アーキテクトやアーキテクティングは生成AI活用で不可欠。AI活用のこれから
はてなブックマークアイコン 2
ブログのファビコン 千里霧中
最近、生成AIによってアーキテクトやテックリードが不要になるのではないかという議論を見かけました。 こうした話の妥当性は開発のコンテキストによって変わるので一概に肯定・否定できる話ではないと思います。 ただ自分個人としては、生成AIの活用拡大で、プロダクトのアーキテクチャやアーキテクトの重要性は高まり、ソフトウェア開発はアーキテクティング(アーキテクチャの構築・維持活動)の比重が増していくと考えています。今回はそれについて意見をまとめます。 生成AI活用ではアーキテクチャの工夫が不可欠 プロダクトのアーキテクチャはソフトウェアエンジニアリング推進や技術活用の点でも重要です。 生成AIの活用にお…
7日前