JS新手在这里。我正在使用Jasmine测试使用MongoDB和Mongoose的NodeJS应用程序,我想用动态工厂替换我的静态测试装置。 https://github.com/ratson/factory-bot对我来说很好。
但是,所有示例都来自单个文件,并且没有演示文件之间的导出/导入,因此我不理解要modules.exports =
使用什么才能在我的规格中使用工厂。
如果这很重要,我也在使用ES5。
我的问题是:如何导出此定义?
spec/factories/user.js
const factory = require('factory-bot').factory;
factory.setadapter(new FactoryBot.MongooseAdapter());
const User = require('../models/user');
factory.define('user',User,{
username: 'Bob',expired: false
});
factory.extend('user','expiredUser',{
expired: true
});
然后如何使用导出文件以制作sampleUsers
?
spec/controllers/user.js
const reqs = require("../support/require")
describe("GET /users",() => {
describe("index",() => {
var data = {};
var sampleUsers = factory.createMany('user',5);
beforeEach((done) => {
reqs.Request.get(/users",(error,response,body) => {
data.status = response.statusCode;
data.body = JSON.parse(body);
done();
});
});
it("returns a 200 response status",() => {
expect(data.status).toBe(200);
});
it("responds with the users collection",async () => {
expect(data.body.users).toBe(sampleUsers);
});
});
});
预先感谢您的任何建议。