写到了数据库层面,Unit Test思路探讨。。。
发布于 10 年前 作者 copycatx5 3317 次浏览 最后一次编辑是 8 年前 来自 问答

一个项目推进到了数据库接入阶段,在测试驱动开发的情况下,问题来了。 在Node.js 与MongoDB架子下,实现app Transaction层面的Two Phase Commit密如蛛网的回调当中,大家对如何实现Unit Test有什么想法么?

基本上局面是这个样子的。 async.waterfall([ Transaction insert, 动作1, 动作2, 。。。 动作m ],function(err, result){ }); 每一个动作,均有数据库操作,带有条件分支。理想的情况,当然是依靠mocha测试用例,在各个transaction层面操控数据库作数据来覆盖分支,但是对于如何下手还是有点麻烦…


招人中~~ http://www.neitui.me/j/365879

2 回复

这已经不是 Unit Test 的范畴了.

function handleIO(err, rows) {
//assertion
	db.io('query', handleIO2);
}
function handlerIO2(err, results) {
//assertion
	db.io('query', handleIO3);
}
describe('a', function() {
	it('a', function(done) {
		db.io('query', hanlderIO);
	});
});

在设计的时候如果不是用async可以使用 非匿名函数。

回到顶部