鉴于有大量库用于从JSON模式或Mongoose模型等开始生成模拟/伪造数据,如何测试sw的行为(让他们说一个web api)错误的数据案例。 例如,假设我有一个名称,电子邮件,电话等用户服务,以及对其字段数据内容的深入描述。让我们说我也有不同的错误代码,应该为每个可能的错误抛出。我无法理解如何以编程方式生成错误的模拟数据(错误的电子邮件,错误的表单名称等)以进入测试。 此外,这些案例是否有一些测试过程规范? 谢谢!
----整合以回答TGW:我正在进行标准测试,例如:
const app = require(-myapp-); //express or whatever app
const userModel = require('-myModelDefinition-); //e.g. json schema
const mockingLibrary = require(-mockingLibrary-); //Sinon or any other
//I'll test that the user->create method works properly on good input
const fakeUser = mockingLibrary.mock(userModel);
describe('\'users\' service', () => {
it('create method - good case',()=>{
return app.service('users')
.create(fakeUser)
.should.eventually
.have.property('_id'); //or any other test
});
});
//What if I want to test on bad input?
const fakeUserWithErrorOnEmail = mockingLibrary.mock(userModel,{errorOn:'email'});
describe('\'users\' service', () => {
it('create method - bad email case',done=>{
return app.service('users')
.create(fakeUserWithErrorOnEmail)
should.be.rejectedWith(Error, "email-error-message");
});
});
因此,我正在寻找的是一个模拟库,能够根据良好的描述/模式生成好的和坏的模拟数据。