QAテスターがプログラマーに理解してほしいと思っている5つのこと

functionize    
サンフランシスコに本社を置くAIと機械学習テクノロジーを組み込んだ自律テストプラットフォームを提供するソフトウェアベンダ
この記事は、著者の許可を得て配信しています。
https://www.functionize.com/blog/5-things-qa-testers-wish-programmers-understood/

ソフトウェア開発者は、ソフトウェアの欠陥との戦いにおいて、自分たちの盾となるテスターを必要としています。 QAのプロは、プログラマーに「同盟を強化する方法」をぜひ知ってほしいと思っています。

プログラマーは、21世紀のマシンを実行するコードをどうやって開発するか知っています。そんなプログラマーのおかげで、映画をストリーミングするNetflixや食べ物を届けるDoorDash(人気のフードデリバリーサービス)というサービスがあります。ほんとうに素晴らしいサービスだと思いませんか?

そうですよね。本当に素晴らしいサービスだと思います。しかし、ソフトウェアテスターとQAの専門家があなたに言うべきことがあるように、プログラマーは多くのことを知っているかもしれません。ただ、彼らはすべてを知っているわけではありません。QAに聞けば、おそらくあなたに教えてくれるでしょう。

プログラマーの知識ベースのギャップを埋めるために、そして最高のプログラマーが残したバグを見つけるためにQAは、存在するのです。 QAがプログラマーに知っていてほしいと思ったことは何でしょうか? 複数のテストのプロがリストを作成し、それをチェックしました。それは、いつも彼らがやっていることですから。

本当にプログラマーを助けるためにQAは存在している

QAテスターのBrad Mendenhall氏は、プログラマーに次のように伝えたいと思っています。彼は「プログラマーが私たちにチャンスを与えてくれれば、私たちは彼らの生活を今よりもさらにいい生活に変えることができます。私たちは彼らの味方なんですから」と話していました。

QAテスターの仕事は、ユーザーエクスペリエンスに悪影響を及ぼす可能性のあるバグを探し、これらのエラーを修正して報告することです。

プログラマーは、テスターがキュービクルのドアに近づいて来るのを見ると(ドアがあるだけラッキーだと思いましょう)、テスターがドーナツを差し入れしてくれるために、自分のところにやって来たのではないと分かります。あなたに「やらなければいけないことがたくさんある」と伝えるために来たのです。これだけでも、なんとなく緊張感が増し、生産性が低下する可能性があります。「こうすると、開発者が私を怖がるようになるので、怖がらせるためにやっています」とBrad Mendenhall氏は言います。

しかしMendenhall氏は次のように指摘しています。「QAを避けたり、敵対視しているとき、プログラマーは最高のプログラミングをしてはいません。」 あらゆるQA介入を避けるプログラマーは、Aゲーム(またはC ++ゲーム)は作れません。おそらく通常よりも積極的に機能をプッシュしないため、進行が遅くなります。

Mendenhall氏は、プログラマーに「あなたミスをするはずです。そのミスの中にはあなたが予想していないミスもあるでしょう。でも問題を見つけても心配しないでください。一緒にこれに取り組んでいけばいいんですから。」

Mendenhall氏は、少し時間に余裕のあるQAテスター向けに提案をしています。QAとの関係を確立できていない開発者を探し、そして20分かけて、「私が誰であるかを理解してください」と言うのです。

時々、彼は本当にドーナツの差し入れを持ってきて話をすることもあります。

プログラマーの学び:QAテスターはあなたの友達です。ドーナツをくれることもあるかもしれないし。

私たちを信じて、本当にバグがここに見えるから

ソフトウェアテスターとして、すぐに注意を払う必要があると思われる興味深いエッジケース(稀な、レアケース)の欠陥を見つけたとしましょう。 たぶんそれはすごいミスです。たとえば、特殊文字や特殊文字の不足のような。そういったミスで、単語の意味が変わる可能性があります。

しかし、問題を実証するためにプログラマーのところに歩いて行くと、ものすごく否定をされます。

「バグが発生する場合がありますが、プログラマーはそれを認めたがりません」と、フロントエンドのQAテスターをしているSyam Patel氏は言います。 Patelのプロダクトマネージャーは、変更が必要なものがある場合も、だいたいは彼に同意します。しかし、彼は、「プログラマー自身がそれをバグだと思わないなら、それを優先して作業をしたり、バグとして受け入れたりはしないでしょう」と言います。 最終的に、ソフトウェアのビヘイビアがバグであるか、機能であるかについての決定はプロダクトマネージャーが行うのです。

プログラマーの学び:QAが「バグがある」と思っていなければ、あなたのところにわざわざ言いにはこないでしょう。

QAは、将来の問題を回避するのに、役に立つものです。次のリリースがスムーズにロールアウトできたことでマネージャーの満足度を高めたいとあなたは感じているはずです。マネージャーの機嫌がいいと、その日の朝、顧客に謝罪するのに1時間を費やした理由を尋ねられることもないでしょう。

プログラマー語ではなく、ちゃんと人間として話をしてほしい

QAテスターがプログラマーに質問すると、望ましくない対応や回答をされる場合があります。確かに質問にはちゃんと答えてくれます。 1から10の度合いで退屈度が11まで到達するくらい退屈な勘定項目の詳細をしっかりと答えてくれます。プログラマーが教えてくれる全く情報が関係なければないほど、テスターにとっては何が重要で何が重要じゃないのかの選別が難しくなります。

プログラマーとQAテスターは、どちらも英語などの共通言語で会話ができます。しかし、一部のプログラマーは、第2言語であるプログラマー語でコミュニケーションを取ろうとする傾向があります。プログラマー語では、「リテラル」、「ブール」、「ファジング」などの難しい専門用語を使います。プログラマーではない人にとっては、全く理解できません。

「プログラマーは自分が知っていることに関しては非常に技術的であり、確かに技術的にとても詳しく物事を説明してくれます」とPatel氏は話してくれました。Patel氏は、コーダーに対して「自分を含めて、他の人もきちんと理解できる言葉で話してほしい」と思っていると話してくれました。

プログラマーの学び:QAテスターに期待されるビヘイビアの問題を説明するように求められた場合、QAテスターをデータベーススキーマの履歴で困惑させないでください。 KISSの原則("Keep it short and simple."端的に短く)を忘れないでください。常に簡潔にシンプルにすることが大事です。

常にコードをアップデートしておく

新しい機能を作る作業は魅力的ですが、規制要件を満たすことは魅力的ではありません。しかし、セキュリティ、プライバシー、アクセシビリティの基準を満たさなければ、ソフトウェアはアイオワ州民主党党員集会のアプリのようにダウンします。

プログラミングの世界で、他の魅力的ではない仕事とは何だと思いますか? QAスタッフがプログラマーにやってほしいこととは? それは、コードを最新の状態にしておくことです。

コードが非推奨になった場合(つまり、チョッピングブロックが予定されている場合)、コードベースからできるだけ早く削除する必要があります。 「フレームワークを簡単にアップグレードできるように、コードをアップデートしておいてください。非推奨の機能を使用すると、基礎となるフレームワークのアップグレードが非常に難しくなります。」とテスターのSheri Byrne氏は言います。

すべての古いコードは、テストプロセス中にQAが発見するだろう問題につながる可能性があります。 一見小さな問題でも、プロジェクトのリリース日までの貴重な時間、日、さらには何週間もの貴重な時間を奪う大きなミスにつながる可能性もあるのです。

プログラマーの学び:コードに重大なエラーがないようにすることで、予想しなかったエラーを修正する時間を確保できます。

できるだけ早くQAに持ち込む方がいい

「プログラマーが、QAのところにできるだけ早く持ち込むと、テスターを最大限に活用できます」とMendenhall氏は指摘します。 QAが活躍する最適な時期は、ベータ版またはユーザーエクスペリエンスのテスト中ではなく、計画をしている時です。

Mendenhall氏は、QAスタッフが製品開発段階からプロジェクトに入っている企業と仕事をしてきました。 経営陣が、今後予定している機能について説明すると、「経験豊富なテスターは、『ご存知のとおり、過去に問題になったのはこれだ。こうやって私はテストをするのです。これは、プログラミングをしている過程で考慮する必要があったものです。』と言うでしょう」とMendenhall氏は言います。

このようなインプットにより、ソフトウェアテスターは、プログラマーが目的地に導くロードマップを作成するのをサポートし、それが構築される前の道を照らしてくれます。なんてすばらしいんでしょう! すぐにテスターたちを昇給してあげてください!

「修正が最も簡単なバグは、作成されていないバグです」とMendenhall氏は言います。チームの計画にループしている場合、優れたQAチームはそういったバグの発生を防ぐことができます。

すべての人が、問題が作成される前に問題を修正する権限を持っているのではありません。その権限を持つ意味のある人だけがその権限を持っているのです。

プログラマーの学び:QAを開発サイクルの一部に引き入れ、QAに任せましょう。

開発者にとっても、テストケースの作成方法を知っていることはメリットになるはずです。幸いなことに、私たちはその方法の一部を共有するホワイトペーパーを用意しています。ぜひ、テストケースの方法も勉強してみてください。


コメントを読む

新着ピック  






















新着ニュース

東大卒プロゲーマー「ときど」はスランプに陥っていた——ウメハラからの助言、そしてたどり着いた「努力2.0」

5分でできるS3とCloudFrontを利用したセキュアな静的Webサイトの作り方 | Developers.IO

[初心者向け] AWS CDKのレイヤーについて調べてみた | Developers.IO

気化した過酸化水素で除染すればN95マスクも再利用可能に | TechCrunch Japan

Wheelsがハンドルとブレーキレバーがセルフクリーニングされる電動バイクを展開 | TechCrunch Japan

ロケット打ち上げスタートアップのSkyroraは消毒液とマスクの生産に注力 | TechCrunch Japan

AWSアカウント間でAmazon EventBridgeイベントを送受信してみた | Developers.IO

CloudFrontの作成や更新時間が約5倍高速になりました | Developers.IO

ポラロイドカメラが復活、新モデルPolaroid Nowが登場 | TechCrunch Japan

新型コロナ、過去2カ月の感染状況を比較した

市販の材料を使い1分で完成する医療用フェイスシールドの作り方をニューヨーク大学が無料公開 | TechCrunch Japan

「エスパーウィーク」は自宅で新ポケモン捕獲のチャンス 家で遊ぶ「ポケモンGO」まとめ

[オンラインハンズオン] はじめての自然言語処理(NLP)powered by LINE API Expert #jawsdays #jawsug #jawsdays2020 #LINE_API | Developers.IO

ソフトバンクGも出資の英OneWebが新型コロナで破産申請 74の衛星を残して

Looker 7でIDE(モデルやビューのWeb編集画面)のUIが改善されました #looker | Developers.IO

Lookerで「Liquid変数」を使ってWeb記事のURL情報をカスタマイズ #looker | Developers.IO

5分間で陽性がわかる米食品医薬局が新たに認可したAbbottの新型コロナ検査 | TechCrunch Japan

ソフトバンクなどからの追加資金を確保できずOneWebが破産を申請 | TechCrunch Japan

【小ネタ】スクリーンショットをカレントへ移動する処理をちょっと深掘り | Developers.IO

AIとビッグデータが新型コロナとの戦いで奇跡を起こすことはない | TechCrunch Japan

もっと見る
記事をPICKする
会員登録
Register
記事をPICKする

会員登録すると、もっと便利に利用できます。