midway
midway copied to clipboard
新需求:希望单元测试能够支持事务回滚
例如:
@Transactional()
describe('test/controller/user.test.ts', () => {
let app: Application;
let o: User;
let at: string;
let username='zhangsan', password='123456';
beforeAll(async () => {
try {
app = await createApp<Framework>();
const commonController = await app.getApplicationContext().getAsync<CommonController>(CommonController);
const loginVO = await commonController.login({username, password})
at = loginVO.accessToken;
} catch(err) {
console.error('test beforeAll error', err);
throw err;
}
});
.```
事务回滚后面是基于数据库级别的吧,dataSource.commit() 和 rollback 啥的。
事务回滚后面是基于数据库级别的吧,dataSource.commit() 和 rollback 啥的。
觉得midway从service层就应该针对事务给出比较系统的解决方案,单元测试只是个延伸。毕竟,对于后端服务来说,数据库是核心中的核心。
service要管理事务就需要考虑事务的开启、关闭、服务间事务的传递等等,应该比较复杂。 做好了,那就可以放心替换 spring 那套了 哈哈
需求 +1
希望能做个类似springboot的@Transactional()注解
需求 +1
希望能做个类似springboot的@transactional()注解
可以试试 https://midwayjs.org/docs/awesome_midway