我的测试用例是用c#语言在selenium中。我需要区分由于Selenium Exceptions和其他编码异常而发生的故障,以便提供适当的错误消息。
我不确定我在下面尝试过的是否正确。 selenium.SeleniumException组是否所有可能的selenium异常togeather。这是我尝试过的阻止块:
catch(Exception e)
{
if(e is Selenium.SeleniumException)
{
Console.Writeline("Defect in Application - Failed due to Selenium Exception");
}
else
{
Console.Writeline("Coding Error - Exception raised in code");
}
}
答案 0 :(得分:5)
而不是尝试使用if-else
语句找出异常类型,而是使用多个catch
语句。这使您可以对不同的异常类型采取不同的行为。
另外,除非你知道如何处理异常,否则就让它传播。
try
{
...
}
catch(WebDriverException exception)
{
Console.Writeline("Defect in Application - Failed due to Selenium Exception");
}
catch(Exception ex)
{
Console.Writeline("Coding Error - Exception raised in code");
}