我正在开发一个REST API,我实际上是在尝试编写单元测试来熟悉它们。我实际上是在NodeJS自制的微框架上使用Mocha。
我知道如何测试从比较,计算中返回数据的方法,但我不知道如何测试从数据库调用返回对象的方法。
我不知道如何测试将其他复杂对象作为参数的对象。
例如,我实际上有一个名为“Service”的父类。其他一些服务扩展了这个类。
在Service类中,我在构造函数MANUALLY中注入了一个实体管理器(它处理数据库)(我使用的是CoffeeScript,并且不使用IOC容器)。
现在,如何在单元测试中获取接受EntityManager实例的服务实例?
我已经阅读了一些关于模拟对象的内容。但是我应该创建自己的模拟对象吗? 我的意思是,创建完全相同的对象但具有其他行为? 喜欢不调用数据库对象而是预定义列表?
这不是太长了吗?
抽象应该很棒才能使它工作(javascript中没有接口,我错了吗?)