如何在发行版之间进行数据库迁移单元测试

IrA*_*App 5 migration sqlite android greendao

我有一个Android应用程序,其数据库版本为1.

我在一个表中添加了一个数据列,并且可以迁移到新版本中.

我遇到的问题是如何为此进行单元测试.我需要检查旧数据是否正确插入新结构中,并以正确的方式添加和填充新列.

我最好怎么做?提前致谢.

Var*_*rma 0

您必须测试 2 个场景:

  1. 用户直接安装新版本。
  2. 用户使用旧版本并升级到新版本。

测试第二种情况通常很棘手。

我通常测试场景 2 的做法是:

  1. 从手机上卸载该应用程序。
  2. 我切换到版本 1 的代码版本 - 请注意,我使用 GIT,因此很容易切换到旧版本。
  3. 使用 Android studio 在设备上运行应用程序。
  4. 创建一些测试数据。
  5. 切换到版本 2 的代码。
  6. 在 Android Studio 中开始调试。此时你的数据库升级方法中要有断点,以确保数据库升级顺利。
  7. 继续其余的测试。