假设我有一个抛出异常的函数:
hello() {
throw "exception of world";
}
我想测试它,所以我写了一个测试:
test("function hello should throw exception", () {
expect(()=>hello(), throwsA("exception of world"));
});
您可以看到我没有直接致电hello()
,而是使用()=>hello()
。
它有效,但我想知道是否还有其他方法可以为它编写测试?
答案 0 :(得分:4)
您可以直接按名称传递hello
,而不是创建仅调用hello
的闭包。
本单元测试通过:
main() {
test("function hello should throw exception", () {
expect(hello, throwsA(new isInstanceOf<String>()));
});
}
答案 1 :(得分:1)
本文介绍了如何测试异常https://github.com/dart-lang/test/blob/master/pkgs/test/README.md#asynchronous-tests
test("function hello should throw exception", () {
expect(hello, throwsA(quals("exception of world")));
});