TDD(测试驱动开发)中的测试台



我的公司想在我们的项目中应用TDD,我们在5个月前开始研究TDD。我们从写作单元开始到验收测试(您可以在 http://uet.vnu.edu.vn/~chauttm/TDD/中看到)。然后我们按照这本书"growing_object-oriented_software_guided_by_tests"做一个试点项目。但是我们在测试台(用于测试端到端系统的架构)方面存在问题https://docs.google.com/file/d/0B23s8xkJtB5ZNHBJbEZ3YTdMTWc/edit。我们有3个团队,一个团队开发服务端,一个团队开发Android客户端,一个团队开发iOS客户端。按照上述测试台,客户团队将编写验收测试并将数据直接插入数据库。服务团队将创建一个 sql 文件,然后客户端团队将使用该文件插入到数据库中。客户团队并不了解所有数据库(我们的系统有 200 多个表),有时,他们不得不花费大量时间来调试,因为他们不知道服务错误。你能给我另一个测试台或建议我使我们的项目(在TDD中)更有效的方法吗?

客户端团队应该有一个模拟服务层,他们针对该层编写自动测试。 这些将具有快速运行且不需要与服务团队协调的优点。 客户端应用程序的大多数验收测试都应以这种方式编写。 如果您正在编写一个使用 Google 日历 API 的应用程序,您不会尝试重新创建整个日历 API,您只会按照您期望的方式模拟日历 API。

对于团队之间的集成测试,您可以在单独的服务器上拥有生产服务的一个版本,其中包含一个包含一些测试数据的生产数据库副本。 对于测试,请将客户端配置为使用测试终结点而不是生产终结点。

最新更新