如何识别被发现的错误?

时间:2016-07-13 21:23:08

标签: c# exception

我抓住了Traceback (most recent call last): File "python", line 9, in <module> KeyError: 'd'

如果是特定错误,我想做点什么。我可以用字符串轻松识别它。

但是我想知道是否有更清洁的方法来做到这一点。例如,当我为异常创建自己的包装器时,我添加一个索引。

默认例外是否有这样的事情?

我使用的抛出错误的函数是Exception(selenium对象)的实例化。但是我不需要特定于该课程的答案。

更确切地说,我发现以下错误:RemoteWebDriver。 但是,如果在创建驱动程序时出现超时或者js文件已关闭,则可能会抛出此异常。他们有保存OpenQA.Selenium.WebDriverException

所以我认为除了不幸地检查字符串之外别无他法......

1 个答案:

答案 0 :(得分:3)

您可以捕获特定的例外情况。例如......

try
{
    //Do things with your RemoteWebDriver...
}
catch (ImportantException e)
{
    //Do something important with this specific exception
}
catch (Exception e)
{
    throw;
}

当且仅当抛出类型ImportantException的异常时,此代码“执行”某些特定内容,但在所有其他情况下,它执行其他操作(在此示例中,它只是抛出异常)。

您也可以使用C#6中的异常过滤器。请参阅:https://stackoverflow.com/a/4268291/1672990