ソークテストの定義

ソークテストという用語に触れる機会があったので、定義を調べてみました。パフォーマンステストの一形態である、ぐらいしか知識がなかったので。ご存じの方はわかると思いますが、パフォーマンステストは奥が深いです。(いい意味かは置いておいて。)ストレステスト、ロードテスト、耐久テスト…。ソークテストが別物として分類するに値する定義なのか、考えてみたいと思います。

まずこちら

>ソークテスト:予想以上の高負荷を与え、データの不整合などの重大事故が発生しないかを検証する

ストレステストとの違いは予想「される」高負荷か予想「以上の」高負荷か、ですね。なお負荷テストとストレステストの違いは、予想される「高」負荷か予想される「通常」負荷か、みたいです。うーん香ばしい。

日本語リソースはこれぐらいです。あんまりポピュラーじゃないんですね。


次は英語Wikipedia

>Soak testing involves testing a system with a typical production load, over a continuous availability period, to validate system behavior under production use.

Typicalな実運用上の負荷をかける。なので、システム限界というよりは利用範囲であり得る負荷、という感じでしょうか。上の定義とちょっと違うような気がします。

>A good soak test would also include the ability to simulate peak loads as opposed to just average loads.

ピーク負荷を与えるのがよいsoak testだと言っていますね。


次。

>Soak Testing is a type of performance test that verifies a system's stability and performance characteristics over an extended period of time. It is typical in this type of performance test to maintain a certain level of user concurrency for an extended period of time.

システムの安定性や性能を検証するもので、長時間に着目しているようですね。ただ、二文目を見ると、ずっと使っている中でのユーザーの一定量の同時アクセスに耐えられるように、という雰囲気なので、時間だけに着目するわけではないかもしれません。


以上3つのORを取ると、想定される範囲上限でのテストで、何らかのリソース枯渇を狙うもの、のようです。

追加情報あったらまた追記します。

いいなと思ったら応援しよう!