2

我正在开发基于 PhoneGap 的网络应用程序。基本上我使用 Jasmine 作为我的测试框架。但是编写健壮的单元测试对我来说很痛苦。我遇到了这些问题,

  1. 网络有时会变得不稳定
  2. 设备差异,有的 CPU 频率高,内存大,有的低
  3. gps信号在不同情况下可能会变强或变弱

单元测试的结果可能会因上述不确定条件而异。如何消除这些副作用并获得更稳健、更可靠的结果?

4

1 回答 1

1

我不确定我能否回答您关于如何消除这些副作用的实际问题,因为我对您的环境了解不多。但是,我确实认为您可以以不同的方式考虑您的测试,这可能会有所帮助。

您的单元测试不应该考虑诸如“如果运行测试时信号变弱怎么办”之类的情况。相反,您应该有一个单元测试来模拟该条件,然后测试您的应用程序在这些条件下的预期行为。当您可以复制假设情况时,您就可以有效地为它们编写单元测试。

下一个明显的问题是如何复制假设条件,我不确定 PhoneGap 或 Jasmine 是否真的可以直接解决。也许您可以在模拟器中控制某些东西,从而有效地重现弱网络/gps 信号。CPU/RAM 功率的差异是您可能只需要大量设备来测试的东西。

于 2012-12-25T04:34:52.473 回答