ソフトウェアの品質を学びまくる

ソフトウェアの品質、ソフトウェアテストなどについて学んだことを記録するブログです。

テスト設計・技法

なわとびから考える情報の仕分けとソフトウェアテスト

レビューの難しさの一つに、「レビューする側とされる側で、感じる重みにギャップのある指摘」問題があります。 特に、「レビューする側は大事な問題だと思っているのだけれど、される側はそう思っていない」ものが厄介です。このような場合、される側は「そ…

「シナリオテスト」とは一体、何なのか - その6・ユースケーステストのカバレッジ

「その6」は、3年以上前のこちらです。 www.kzsuzuki.com Twitterで交わされていた「ユースケーステストのテストカバレッジ」という言葉が気になったので、考えてみました。 ユースケースやユーザーストーリーのテストカバレッジを考えるとき、カバレッジの…

テスト設計技法を分類する「Ostrandの4つのビュー」の原典に一生たどり着けない

暑かった夏ももう終わり。そろそろ秋ですね。 この記事では初秋らしく、テスト技法を分類する切り口の1つとしての「Ostrandの4つのビュー」を紹介します。 手始めに、『ASTERセミナー標準テキスト』を引用してみましょう。 ASTERセミナー標準テキストV3.1.1…

テストケースとAcceptance Criteriaの違いは何なのだろうか

ちょっと前に、テストケースとAcceptance Criteria*1(以下「AC」)の関係について、こんな疑問を抱きました。 ACが、「ユーザーストーリーが満たすべき必要条件」だとすれば、それはテストケースとどう違うのだろう。ACのあるべき記述粒度って? この疑問に…

ドメイン分析テストとデシジョンテーブルの違い

前回の記事の元ネタとなったHideo Oideさんのつぶやきから、「結局のところ、ドメイン分析テストとデシジョンテーブルテストの違いって何よ」という議論が生まれています。 この記事では、この議論に対するわたしの見解を整理してみます。よい解釈かどうかは…

価格計算仕様のトラップとテスト技法

Hideo Oideさんが、こんなつぶやきをしていました。 ドメイン分析でブツブツ言ってるのは、某ショップで(Amazonや楽天じゃない)、4000円以上お買い物すると送料無料(700円)、10%引きのクーポンが付与されてたって条件で、4100円分買うと、4100−410+700=4…

テストケースの期待結果と事前・事後条件

「データ駆動テスト」についてのメモを書こうと思い立って、その前にまず「テストケースの構成要素」について整理しようと思って、そのためには「テストケースの期待結果と事前・事後条件」について考えをまとめなくてはならないと無限後退している鈴木です…

#devsumi で「テストを学んでみたい開発者のためのソフトウェアテスト読書マップ」という発表をしてきました。

Developers Summit (デブサミ) 2023で、「テストを学んでみたい開発者のためのソフトウェアテスト読書マップ」という発表*1をしてきました。 event.shoeisha.jp 資料はこちらです。 speakerdeck.com これまで、ソフトウェアテストとかQAの世界でばかり聴講や…

JaSST nano vol.19で『ISO/IEC/IEEE 29119-11からAIシステムのブラックボックステストについてメモってみたの』というタイトルで発表しました #jasstnano

タイトル長すぎてすみません。 発表資料はこちらです。 speakerdeck.com vol.19は、わたしが発表予定を確認した時点では石川冬樹先生の「画像生成AIのQAを考えてみる」しかエントリーされておらず、「専門家の話を聞く前の前座として、AIのテストについての…

ソフトウェアテスト分野のFizzBuzz、「Myersの三角形問題」に学ぶ、テストについての教訓

テストエンジニアの多くが一度は耳にし、解いたことがあるであろう「Myersの三角形問題」。 社内のソフトウェアテスト勉強会で、n年ぶりm回目で解いてみました。 この10分ほどのトライを通じて、以下のようなことを再認識しました。 Myersの三角形問題とは M…

ISTQBの「性能テスト担当者」シラバス日本語版を読んでみた - その2

今回は、1.2で扱われている、性能テストのテストタイプについての記事です。前回の記事はコチラ。 性能テストにはさまざまなテストタイプがあるので、1つのデファクト・スタンダードとしてISTQBが整理してくれているのはありがたいことです。 またこの部分に…

ISTQBの「性能テスト担当者」シラバス日本語版を読んでみた - その1

JSTQBから、性能テストのシラバスの翻訳が出ました。 ついつい当たり前に思ってしまいがちですが、テストの知識のデファクト・スタンダードといえるISTQBのシラバスが日本語で読めるというのは、本当にありがたいことですね。訳者のみなさまに感謝。 jstqb.j…

コープランド本の例題から、ブラックボックステストとホワイトボックステストを考える

プレスマンの白本*1・「第19章 ソフトウェアテスト - コンポーネントレベル」の「19.5 ブラックボックステスト」には、以下のような説明があります。 ブラックボックステストテストはホワイトボックステストの代替ではない。むしろ、ホワイトボックステスト…

テストオラクルとは何か

"File:Chinese oracle bone (16th-10th C BC) - BL Or. 7694.jpg" is licensed under CC0 1.0 ソフトウェアテストの有識者の方々と、「テストオラクル」について話す機会があったので、自分なりの理解を整理しておきます。 まずはおなじみ、I/JSTQBの用語集…

テスト設計モデリングツール・GIHOZと、テストプロセスのつながり方について

Veriserveさんからリリースされた、テスト設計モデリングツール「GIHOZ」のおためしを、2回の記事で紹介しました。 www.kzsuzuki.com www.kzsuzuki.com 今回は、GIHOZへの期待と、テストプロセスのツールってこうなるのかなーという想像について書きます。 G…

Veriserveのテスト設計サポートサービス、GIHOZを触ってみる - その1

Veriserveさんが、テスト設計技法を使うためのWebサービスをリリースしたと聞いて! GIHOZ(ギホーズ)というそうです。 www.veriserve.co.jp さっそく触ってみましょう。 推奨ブラウザがわからないので Edge 87.0.664.41 で試してみます*1。 GIHOZを動かし…

『練習帳』の問題を解きながら、デシジョンテーブルと組み合わせテストの位置づけについて考える

『ソフトウェアテスト技法 練習帳』の第4章「組合せテスト」*1を解き終えました。 ソフトウェアテスト技法練習帳 ~知識を経験に変える40問~作者:梅津 正洋,竹内 亜未,伊藤 由貴,浦山 さつき,佐々木 千絵美,高橋 理,武田 春恵,根本 紀之,藤沢 耕助,真鍋 俊…

状態遷移テストの ignore と not happen について、astah*とともに整理してみる。

先日の記事で、状態遷移テストのカバレッジについて書きました。 www.kzsuzuki.com この記事のために利用させていただいている、モデリングツール「astah*」。このastah*で描く状態遷移表に用意されている、ignore と not happen という選択肢について、asta…

「シナリオテスト」とは一体、何なのか - その4

シナリオテストについてのメモです。 シナリオテストについては識者がいろいろな議論していますが、それらとの整合性とかは考えず、今わたしが考えている、わたしの知っているドメインでの「シナリオテスト」の話です。 ただ、下書きを書いた後に、2012年の…

モデルベースドテストについて学んでみよう - その5

せっかくファンクションネットを学んだので、「ハノイの塔」のモデルを作ってみることにします。 ハノイの塔とは ハノイの塔については、Wikiにアニメーションもあるのでそれを見ていただくのが早いと思いますが、「仕様」を引用します。 ja.wikipedia.org …

モデルベースドテストについて学んでみよう - その4

第3回では、MBTツール「MISTA」を使って、ブロックゲームのファンクションネットを完成させました。 www.kzsuzuki.com 第4回では、できあがったモデルでシミュレーションを行ったうえで、テストケースの自動生成をやってみましょう。やっとモデルベースドテ…

モデルベースドテストについて学んでみよう - その3

前回は、MBTツール「MISTA」でブロックゲームのシンプルなモデルを描いてみて、シミュレーションで一手進めたところまでを見ました。 www.kzsuzuki.com トークンとイベントの関係とは 上の状態から、もう一度pickup(x)を選んで遷移させてみましょう。 2つの…

モデルベースドテストについて学んでみよう - その2

モデルベースドテスト(Model-based Testing、MBT)について学ぶシリーズの第2回です。2018年アドベントカレンダーの2日目でもあります。 www.kzsuzuki.com 第1回を振り返ってMBTとさくっと説明すると、「要求・仕様に基づいてモデルを描き、そこからテスト…

テストの成功と失敗どちらを期待するのかマトリクスを描いてみる

2月に「リグレッションテストと他のテストを分けるものは何?」という、哲学的な問いが現れていたので、その疑問には全然答えない記事を書いてみます。 リグレッションテストとその他のテストを分けるのってつまるところ実行回数なのかな?2回目以降のテスト…

『ソフトウェアテスト技法 練習帳』を解きながら、自分の考え方も整理していく。

『ソフトウェアテスト技法 練習帳』を、じわじわ解いています。 ソフトウェアテスト技法練習帳 ~知識を経験に変える40問~作者:梅津 正洋,竹内 亜未,伊藤 由貴,浦山 さつき,佐々木 千絵美,高橋 理,武田 春恵,根本 紀之,藤沢 耕助,真鍋 俊之,山岡 悠,吉田 直史…

パスワード要件で原因結果グラフを描いてみたけれど苦しい。

完全にローカルメモ。 dマガジンというサービスのパスワード要件に一瞬迷ったのですが、秋山さんから「原因結果グラフを描くのだ!」とのご神託を受けたので、トライしてみました。 原因結果グラフを描くのだ!ちょっと難しいけど。— あきやま (@akiyama924)…

AI/DLシステムの説明可能性と組み合わせテストの関係

はじめに 辰巳敬三さんが先日、このようなツイートをされていました。 Automated Combinatorial Testing for SoftwareExplainable Artificial Intelligencehttps://t.co/xvOyV4lAkA— Keizo Tatsumi (@KeizoTatsumi) June 6, 2019 「An Application of Combin…

境界値分析を行える対象とはどんなものなのか

同値分割と境界値分析は、セットで学ぶことが多い技法です。でも、どんな同値クラスにも境界値があるわけではありません。 たとえば、世界各国を同値分割することを考えましょう。 日本を「アジア」、エジプトを「アフリカ」、のように「地域」という切り口…

ドメイン分析テスト周りの用語の整理メモ

Twitter上で不定期に議論になる、ドメイン分析テストにおけるOn/Off、In/Outなどについての整理メモ*1です。 同値分割、境界値分析、ドメイン分析についての概要を知っていることを前提としています。 用語の定義 『ソフトウェアテスト技法ドリル』でも『は…

同値分割の「partition(ing)」という単語についてのメモ

同値分割に関する湯本さんのnoteを読んでの、単なるメモです。 note.mu そもそも、part、partition、partitioning と、英単語の時点でややこしいんですよね。以下、Oxford Dictionaryからの引用ですが、適宜はしょっています。 part An amount or section wh…