如何在 typescript 中捕获数据库插入(运行 时间)错误并在 chai 中编写合适的测试用例?

How to catch a Database insertion (run time) error in typescript and write a suitable test case in chai?

这是我的 try 块:

try {
    User.create({
            firstName: "Mahesh",
            lastName: "Das"
   });
}

在这里,我需要捕获数据库插入(运行时)错误。 我使用 postgres 作为数据库和 Sequelize 来执行操作。 我还需要使用 chai 为它编写一个测试用例。 提前致谢。

与 Java 等其他语言不同,在 JavaScript 中我们只能捕获一般错误,然后检查该错误并适当处理。

try {
  ... some code ...
}
catch (err) {
  if (err instanceof SyntaxError) {
    ... handle SyntaxError ...
  }
  else if (err instanceof TypeError) {
    ... handle TypeError ...
  }
  else {
    ... catch everything else ...
  }
}

由于您没有提供要捕获的错误的示例,因此我无法让我的示例更具体地针对您的情况,但上述方法应该适合您。

你的测试,因为你正在捕获错误,将取决于相应的 catch 块中发生的事情。