91. テストの目的 その③
ステークホルダーが意志決定できる、特にテスト対象の品質レベルについての十分な情報を提供する。
JSTQBに書かれている言葉としては上の通り。
テストをしないと
「これホント大丈夫なんだっけ…。ちゃんと動くんだっけ…。不安だ。けどエイヤで出すぞ!」
といったところ。
それがテストをすることによって様々な情報が「見えてくる」わけです。
自分たちが考えている使い方だとバッチリ動作することがシナリオテストでわかったとか。
負荷テストを行って、今までの最大アクセス数までは全然余裕で動くことがわかったとか。
セキュリティテストを行って、よくあるような脆弱性の心配は解消されてるとか。
実はオプション画面で繰り返し変更かけると1/100くらいで設定失敗するとか。そこ原因わからなくて直してないとか。
こんな感じで、テストしないときは漠然と「不安だ~」と思っていたことが、テストによって
「ここはこういうテストをしてこう動くと確証を得ています。けどこういうリスクが残っています」
という情報としてわかります。
で、この情報を、例えばリリースの意思決定者が見て判断材料とします。
「全く不便なく動作するけど、このバグ……1/100……このアプリの使用者は10万人だから1000人くらいヒットするやん……今回期間がまだあるし、少しリリースのばそう」
となったりします。
オートスケーリング
負荷に応じて、仮想マシンの性能を上げたり(スケールアップ)、台数を増やしたり(スケールアウト)したりする機能。(逆はスケールダウン、スケールイン)
その昔、クラウドではなく社内で物理サーバーを運用していた時は負荷が上がったからと言って気軽にサーバー性能向上とか、サーバー台数を増やしたりはできなかった。
なんせ……物理なので! 買わなきゃいけないので!
けど今はクラウド時代。
こういったことが自動で増減できるようになったわけですね。
E2E自動テスト
エンドツーエンドの自動テスト。
システムテスト自動化など、言い方は様々。
ユーザーが触るweb画面やアプリ画面を、プログラムで自動でクリックしたりして動かすテスト。
作者が昔やってたころはselenium(web側)とかappium(スマホ側)とかを使っていました。
今もseleniumなどwebdriver系はよく使われているみたい。
他、PuppeteerやCypressあたり(どっちもブラウザ自動化系)をよく聞ききます。
selenium含めてプログラムの知識がないと手が出しにくい領域です。
近頃よく見るのがAutifyなどの「AIを使った自動化」系です。
これだけ聞くと、なんかサイバーなマシンが勝手にテストを終わらせてくれてハッピーな様子を想像しがちですが、テスト自体は自分たちで作ってAI部分は「テストの修正」部分が今はメインです(オートヒーリングっていいます)
E2E自動テストで何が大変かって、仕様変更で要素変わっちゃうとテストスクリプト直さないといけないところにあります。
これ、ケース数が増えると手間がハンパないんですよ。
その修正の手間をAIパワーである程度省いてしまおう、というのが最近のツールですね。
ちなみにテストスクリプトを作るのも、自分たちの操作を記録して作れるのでラクチンだったりします。
他この頃twitterで見る言葉が「テスト自動化、自動テストだと何指してるかわからん!」です。
これ、言う人が何やってる人かで指すものが結構違うんですよね。
「テスト」を専門に取り扱っている人が「テスト自動化」っていうと大体E2E自動テストを指しています。
なんだけど開発の人が言うとUnit testなどをプルリクエストベースで自動的に回すことを言っていたりします。
あと「Karateでテスト自動化を…」と言っている人がいたらその人は武道を自動化しようとしてるように見えますが、APIテストの話をしていたりします。
ややこしいですね!
エラーコードのみの文言
たまにある。
たまにというかよくある。
このコード見てどうしろっていうのさって思う。
探索的テストで見つけやすいヤツのひとつ。
ステークホルダー
ビジネス用語……でいいのかなぁ。
利害関係者という意味。
業務でステークホルダーって言葉を使うときは、一緒に仕事してるってワケじゃないけど関係はしている人、みたいな人たちに使うことが多い。
今回のネタ
宇宙戦艦ヤ〇トです。
イメージは波〇砲を放つ時みたいな。
リアルタイム世代ではないですが、父が好きでたまに一緒にビデオを見てたりしました。
マンガにも描いたけど、作者は波〇砲を放つ時のやり取りとか妙に好きです。
あとロボットの初回出撃シーンとか。
男の子ならきっとわかってくれるはず!!(ぉぃ
これを書いている2020/07/19だと、デカダンスというアニメの巨大ロボの起動シーンにときめいていましたw