テストごとにDB情報をリセットしたい
テストを実行するときには、テストデータをきれいにしてからはじめたいものです。たとえば、新しいユーザを使ったり、DBのデータをリセットしたり・・・。mablにはAPIを呼び出せるステップ(命令)があるので、これを活用すれば上記を解決できます。
テストを実行するときには、テストデータをきれいにしてからはじめたいものです。
たとえば、新しいユーザを使ったり、DBのデータをリセットしたり・・・。
mablにはAPIを呼び出せるステップ(命令)があるので、これを活用すれば上記を解決できます。
参考: API Steps
たとえば、APIでユーザ作成できるなら、テスト前にAPIを呼び出し、返ってきたユーザ情報(ログインIDやパスワード)を使ってテストをはじめます。
DBをリセットする処理がAPIでたたけるなら、テスト前に呼び出せばDBリセットも可能です。JenkinsのJobで「DBリセットジョブ」を作ってもいいかもしれません。
注意点として、「テストは成功したけどDBリセットで失敗していた」や「DBリセットがうまくできておらず、次のテストで失敗してしまう」可能性もあるため、前処理や後処理は独立して確実に実行できるのが理想でしょう。
毎回データを作成、リセットできるとテストは飛躍的に安定しますが、それが難しい場合は、データを分けて管理するのも手です。
たとえば、最初にちょっと手間がかかりますが、「ログインテスト用ユーザ」、「パスワードリセット用ユーザ」のように専用ユーザを作って対応します。
互いのテストに影響が出ないようにデータを用意できるなら、それだけでもだいぶテストは安定します。
Updated almost 2 years ago