我公司的软件开发团队使用 TDD 和 BDD 实践进行开发。因此,我们有大量的单元、集成和验收测试,让我们知道我们的代码库是否按预期工作。不用说,如果没有这些给我们持续反馈的测试,我们现在就无法生存。
我们团队的开发DBA编写的 TableView 逻辑复杂。他在没有进行单元测试的情况下开发这些,当他进行后续开发时,它们总是会崩溃,导致软件开发团队感到沮丧。
我的问题是,是否鼓励 DBA 在敏捷环境中工作时使用 TDD 实践? DBA 是否有测试框架允许他们以这种方式工作?我们使用IBM的DB2数据库;该数据库是否有任何测试框架允许以TDD方式开发数据库 View ?
最佳答案
过去我使用了两种方法:
应用程序中有一个非常薄的数据访问层,并围绕它编写测试。换句话说(假设您的 dba 使用存储过程),对于每个新的存储过程,都会编写一个访问它的方法,并创建一个测试来适本地执行它(或者更好,首先进行测试)。这很好,因为它可以轻松地与测试运行程序集成。您可以使用事务回滚测试,而不会产生副作用。
另一个选择是使用 native SQL 测试框架。我评价过tsqlt这是一个 SQL Server 框架,因此不适合您的情况,但该方法很可靠,并且可能有适合 DB2 的框架。
关于unit-testing - 开发 DBA 的 TDD 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18789008/