0

我和我的团队有一个大型 Web 应用程序,我们正在移植以使用Symfony框架,其中包括用于数据访问的Doctrine2 。当我们刚刚开始时,我们想知道稍后对实体关系进行回归测试。

我们有大量从数据库模式自动生成的 Doctrine 实体,现在正在检查和整理每个实体,特别是在关系映射领域。一旦映射完成(使用 doc 块注释)并且我们通过简单的脚本确认实体正在执行正确的数据访问,那么确保映射以及因此实体的功能将来不会中断的最佳方法是什么。

我们正在为作为独立单元的所有实体编写单元测试,模拟所需的依赖项,但这并不一定能保护我们免受正在编辑的注释注释或模式更改和破坏当前实体关系的影响。

有什么想法吗?这里有人有同样的问题吗?

4

1 回答 1

1

我们为每个顶级实体创建了我们称之为功能测试的内容,以测试子实体与该实体的关系。基本上,一个顶级实体被实例化并使用模拟数据来填充它,然后添加它的所有实体依赖项,它们自己被填充模拟数据。然后在一次操作中将所有这些都持久化到数据库中。然后从数据库中读回实体并测试与原始数据的相等性。它比这要复杂一些(尤其是相等测试),但是如果任何关系映射被更改或出现错误,这个测试会立即失败并给我们一个调查的问题。

于 2012-10-28T13:23:39.843 回答