非機能テストとは何か?3分で理解する

テスト技法

機能テストが大事なことは、誰でもわかりやすいことですが、

ユーザー評価がビジネスに大きく影響する昨今では、非機能テストの重要性が増してきてます。

そこで今回は、非機能テストについて3分で理解できるように、ざっくり要点だけまとめて解説したいと思います。

非機能テストとは、JSTQBのシラバスでは以下のように定義されています。

非機能テストは、システムが「どのように上手く」振る舞うかをテストする。

とのことです。

つまり、非機能テストってどういうこと?

つまり、テスト対象となるそのシステムやソフトウェアが

使いやすいか??? = 使用性

性能が充分か?めちゃくちゃ動作重いとかない?? = 性能効率性

セキュリティ大丈夫?安全に使える?

運用しやすい?拡張しやすい?など、、

そんな観点で行うテストのことです。

また非機能要件が仕様作成時に定義されているのであれば、その要件に合わせて、要件を満たしているか確認するテストのことです。

で、非機能テスト、どうやってテストするの?

非機能テストのテスト手法の一例として、以下のようなものがあります。

  • 性能テスト
    • 性能要件を満たした性能が出るか(処理速度や処理可能なデータ量など)確認する
  • 負荷テスト
    • 過負荷状態でもテスト対象のシステムやソフトウェアが耐えられるか、仕様通り動作するか確認
  • ロードテスト
    • 長時間にわたり同じ処理を何回も行い、その処理が速度や挙動など、問題なく行われることを確認
  • セキュリティテスト
    • 規定した機密保護レベルをクリアしているか確認
  • ユーザビリティテスト
    • ユーザーに使ってもらって、「使いやすい」とか「使いにくい」とかフィードバックを確認

他にも非機能テストの手法としては色々ありますが、ざっくり上記のようなことを行うテストだと思ってもらえば間違いないかと思います!

ちなみに

非機能テストはすべてのテストレベルで行うことができる!!

とJSTQBのシラバスでは記載されています。受け入れテストレベルじゃないと非機能テストは実施できない、、と誤解されやすいとこなので注意です!

ここ試験(JSTQB FLレベルの)に出そ〜

以上、非機能テストとは何か?を3分で理解する説明でしたー

参考文献