Androidアプリケーションの機能テストを書いて、異なるログインフローをテストしようとしています。Androidの機能テスト:テスト間のデータベースのクリア
私ができることをしたいのは、最初のアクティビティから始め、特定のユーザーとのログインをシミュレートし、最初のアクティビティからもう一度開始し、別のユーザーとのログインをシミュレートすることです。
私が実行している問題は、特定のユーザー情報をローカルデータベースに書き込むときに、2番目のユーザーをログオンしようとすると、データベースに既に最初のユーザーの情報とテストが含まれていることです失敗する。
私が望むと思うのは、テスト実行の間にデータベースをクリアする方法です。
ActivityTestRuleを使用してデータベースを削除する方法が見つかりましたが、実際にはデータベースを消去するのではなく、database.dbファイルが実際に削除されます。これにより、データベースが存在しないため、2番目のテストも失敗します。
テスト実行の間にデータベースをクリアする明確な方法はありますか?
私は考えることができる唯一のことは、ログインフローごとに1つのテストクラスを持つことで、アプリケーションは実際にテスト実行の間にプロセスを再起動する必要があります(テスト実行の終わりにdbを削除する)は、毎回新しいデータベースでデータベースを起動することができます。