我想将我的课程转换为可测试的课程。因为我的课程是使用控制台日志操作。但这是无法测试的。
export class CreateLayerCommand implements Icommand{
execute(parameters: Object): Object {
if (!parameters.hasOwnProperty("name")) {
console.warn("Layer needs name parameter.", parameters); }
if (!parameters.hasOwnProperty("url")) {
console.error("Layer needs name parameter.", parameters); }
if (!parameters.hasOwnProperty("title")) {
console.warn("Layer needs name parameter.", parameters); }
let layer = new Layer(parameters);
return (layer);
}
}
所以我的测试班不知道控制台日志。但是我想抛出诸如C#或Java这样的异常。
export class CreateLayerCommand implements Icommand{
execute(parameters: Object): Object {
if (!parameters.hasOwnProperty("name")) {
throw new ArgumentNotFoundException("Layer needs name parameter"); }
if (!parameters.hasOwnProperty("url")) {
throw new ArgumentNotFoundException("Layer needs url parameter"); }
if (!parameters.hasOwnProperty("title")) {
throw new ArgumentNotFoundException("Layer needs title parameter"); }
let layer = new Layer(parameters);
return (layer);
}
}
我认为异常可能是可以测试的。
但是我需要一个全局异常处理程序来控制台控制台记录这些异常消息。这可能吗?