マガジンのカバー画像

黒柴的ソフトウェアテスト考

17
黒柴は、ソフトウェア開発の経験を通して、テストの重要性を常に考えています そんな黒柴がソフトウェアテストをどのように考え、どのように実施していくのかを書いてみました
運営しているクリエイター

#ソフトウェアテスト

黒柴的ソフトウェアテスト考 #14

テスト工程を計画することで実現するシフトレフト
#13に引き続き 、2024/03/28に開催された、Findy主催のオンラインカンファレンス「伊藤 由貴さん、ブロッコリーさんに聞く!シフトレフトテストの推進と今後の展望」の感想をまとめておく

今回のメインテーマは「シフトレフトテスト」ということになるが、この「シフトレフト」という言葉は、JSTQBのFoundation Level シラバス最新

もっとみる

黒柴的ソフトウェアテスト考 #17

生成AIで、テスト項目を作成する(その3)

ソフトウェアテスト考#15、#16の続きである。
今回は、Copilotに質問し、生成されたテストケースを確認していこうと思う。

Copilot自身に質問したが、バージョンは回答してくれなかった。

Copilotを使用した人ならわかると思うが、会話のパターンは「厳密」を選択している。
次に、ChatGPT、Geminiに質問した内容と同じものを質問

もっとみる

黒柴的ソフトウェアテスト考 #16

生成AIで、テスト項目を作成する(その2)

ソフトウェアテスト考#15の続きである。
今回は、Geminiに質問し、生成されたテストケースを確認していこうと思う。

Gemini自身に質問すると、バージョンは「Gemini 1.5 Pro」となっている。

このバージョンがどの程度新しいのか不明だが、Geminiの回答によると最新のようだ。

次に、ChatGPTに質問した内容と同じものを質問し

もっとみる

黒柴的ソフトウェアテスト考 #15

生成AIで、テスト項目を作成する(その1)

昨今、生成AIが流行っている。
自社でも、ディープラーニング好きの役員が、「生成AIの利用ガイダンス」みたいな社内打ち合わせを、出席必須で行っている。
「使え」と言われても、業務自体はSIer、またはメーカーの下請けとしてのソフトウェア開発であるため、一歩間違えれば自社ではなくカスタマーの秘匿情報が生成AI側に流出してしまう。
そういう意味での「使い方

もっとみる

黒柴的ソフトウェアテスト考 #13

テストって何でしょう?

だいぶ時間が空いてしまったが、2024/03/28に開催された、Findy主催のオンラインカンファレンス「伊藤 由貴さん、ブロッコリーさんに聞く!シフトレフトテストの推進と今後の展望」を視聴したので、その感想をまとめておきたい

興味深いなと感じたのは、伊藤さんが「テストの分解&可視化をする」として、各テスト工程で何を行うのか?ということを定義していたことだった
この辺り

もっとみる

黒柴的ソフトウェアテスト考 #12

テストから考えるソフトウェアの設計#1

これは、あるプロジェクトでのバグから考える考察である

仕様:

ある工場では、3直で24時間勤務を行っており、アプリの画面には現在の直で実施予定の作業情報を表示する
そのため、テスト対象の処理ルーチンでは、現在時刻を元に現在の直の開始時刻を算出する仕様としている
各直の勤務時間は以下のとおりとする

テストケース:
担当者(実装、およびユニットテストを担

もっとみる

黒柴的ソフトウェアテスト考 #2

JSTQBとの出会い

ソフトウェアテスト考#1でも書いたように、2000年代の後半くらいから国内でもソフトウェアテストを専門的に扱った書籍が発売されるようになった
黒柴も、いくつかの書籍を読んでみたが、何をどうすれば「ブラックボックステスト」といえるのか?ということを詳細に説明したものはなかったと記憶している

そんな中、お世話になっている諸兄も多い技術評論社から、以下のような季刊(?)雑誌が発

もっとみる

黒柴的ソフトウェアテスト考 #11

コンポーネントテスト(単体テスト)に関する調査の考察#6

※この記事は、テスト考#10の続き

テスト考#10で整理したように、コンポーネントテストについては、過去に見積もりを行っていたよりも、大きなコストがかかることが分かった
ちなみに、1990年代くらいに見積もりを行っていた時は、製造工数と単体テスト工数は、ほぼ等しいと考えていた
すなわち、製造(プログラミング)に10人月費やすなら、単体テ

もっとみる

黒柴的ソフトウェアテスト考 #10

コンポーネントテスト(単体テスト)に関する調査の考察#5

この記事は、考察#1~4をまとめたものとなる

今まで調査してきた記事を元にすると

TDDで実施するテストは、QAを行うテストとは別物である

QAを行うテストは、テストベースを元に分析、設計を行う必要がある

作成したテストコードは、仕様変更ではメンテンナンスが必要となる

上記を考えると、コンポーネントテストは想定しているよりコスト

もっとみる

黒柴的ソフトウェアテスト考 #9

コンポーネントテスト(単体テスト)に関する調査の考察#4

最後の考察は、以下のブログ記事に関するものとなる

著者は、TDDによるWPF開発を行ったチームに所属しているエンジニアで、該当記事の執筆時期は2016年くらいなので、開発時期はそれ以前と思われる

内容はリンク先の読んでいただくとして、黒柴の感想をまとめていきたい
結構、この記事は「なるほど」と思わされるところが多いので、テスト考#
7

もっとみる

黒柴的ソフトウェアテスト考 #8

コンポーネントテスト(単体テスト)に関する調査の考察#3

3番目の考察は、以下のブログ記事に関するものとなる

著者は、TDDを適用したプロジェクトをコントロールしているリーダーで、該当記事の執筆時期は2015年初頭だが、開発時期は2009年くらいと思われる

内容はリンク先の読んでいただくとして、黒柴の感想をまとめていきたい
著者自身が、TDDによる開発を実施した結果、壁となったのは以下の7点

もっとみる

黒柴的ソフトウェアテスト考 #7

コンポーネントテスト(単体テスト)に関する調査の考察#2

2番目の考察は、以下のブログ記事に関するものとなる

著者は、TDDによる開発を実践したエンジニアで、該当記事の執筆時期は2014年初頭くらいなので、開発時期はそれ以前と思われる

内容はリンク先の読んでいただくとして、黒柴の感想をまとめていきたい
著者自身が、TDDによる開発を実施した結果、気になった点は以下の3点だと思う

想定してい

もっとみる

黒柴的ソフトウェアテスト考 #6

コンポーネントテスト(単体テスト)に関する調査の考察#1

最初の考察は、以下のブログ記事に関するものとなる

著者は、「JUnit実践入門」の著作があるエンジニアで、該当記事の執筆時期は2013年9月頃である
この記事を読んで、黒柴が気になったこと、感じたことを述べていきたい
この「10の勘違い」はどれも考えさせられる内容だと思うので、一読して自分自身でいろいろと考えて欲しいと思う

ひとつめは

もっとみる

黒柴的ソフトウェアテスト考 #5

コンポーネントテスト(単体テスト)の実施に関する調査

ここからは、調査した内容をもとに黒柴が社内教育用に資料として作成したので、その資料をベースとして調査内容、評価・感想を述べていきたい
ちなみに、調査・資料作成は2019年に実施している

コンポーネントテストの歴史について、以下のように整理した

黒柴は、テストフレームワークを使ったコンポーネントテストを実施した経験はなく、あるプロジェクトの

もっとみる