我正在为一个库编写单元测试,在从数据重构业务逻辑之后,我现在对如何测试逻辑有点困惑!
例如,我有一个非常复杂的过程,其中传递了一组数据,我将使用数据提供程序,因此我可以确保它适用于各种情况.
有了我将通过数据提供者传递的数据,我是否也应该通过预期的结果?或者应该在测试中计算出来.
如上所述,计算过程是一个非常复杂的过程,并不完全$a + $b
.
我有一张包含周数和id的表
| id | week |
| 1 | 1 |
| 2 | 2 |
| 3 | 6 |
| 4 | 8 |
Run Code Online (Sandbox Code Playgroud)
我需要做的是根据周的值来检索.但是如果行大于某个数字,我还需要多次返回该行.
例如(伪),
if week > 2
and week > 6
| id | week |
| 2 | 2 |
| 3 | 6 |
| 3 | 6 |
| 4 | 8 |
| 4 | 8 |
Run Code Online (Sandbox Code Playgroud)
ID 3和ID 4出现两次,因为它们大于2和6. ID 2只会出现一次,因为它只大于2.
不幸的是循环查询是那种出了问题,因为这查询将返回2K +行.
即使解决方案是基于PHP的,也会非常感谢任何帮助.
我需要能够指定关系的条件(一对多).
例子是; 我们有一个帖子有很多评论,但我只想要用户A发表评论的帖子,然后返回帖子对象.
我目前可以想到这样做的唯一方法是使用Fluent查询,它不会返回我想要的Post对象!
编辑:
评论必须由用户A完成.发表评论的用户与帖子的关系不是直接关系.它将通过评论表.
RE编辑:
是否也可以说有不同的帖子?而不是返回3个相同的Post对象?