我支持并开发了一个系统,该系统连接到15个不同的数据库,用于SELECT, UPDATE和DELETE信息。我是一个独立的开发者。
我已经开始使用源代码控制(tortoiseSVN)。我听说过"夜间构建"这个术语,我相信我会从中受益。我读了很多关于夜间构建的信息。我理解它是指每晚更新的测试系统。
我的问题是我开发的系统很复杂,我必须创建15个不同的测试数据库(其中一些是在内部开发的,有些不是),加上有一个白天运行的数据清理工具,并且必须为此设置一个测试系统。
说我开发的系统对于夜间构建来说太复杂是可以原谅的吗?我想没有——外面有更复杂的系统。另外,我是否正确理解了夜间构建的概念?
我理解它是指每晚更新的测试系统。
不,每晚构建不是这样的。它是对源代码的自动编译,通常伴随着单元测试和集成测试的自动运行(尽管严格地说,编译部分就是构建)。
说我开发的系统对于夜间构建来说太复杂是可以原谅的吗?
可原谅的?它是一个借口。但是,您不必从测试覆盖的15个数据库开始。您可以从自动编译开始。然后可以添加单元测试(不涉及数据库)。然后从一个数据库的集成测试开始,接着是另一个数据库,直到您涵盖了所有15个数据库和重要的功能。
一般来说,上面可以描述一个持续集成(CI)环境,其中的区别在于,在大多数CI环境中,每次提交/签入/推送都会触发构建,并运行测试(在某些地方,如果所有测试都是绿色的,那么产品也会自动部署)。