Может быть или не быть бесполезным, полностью зависит от того, как мы его используем.Я использовал его таким образом, чтобы я мог вести журналы исключений.
public final void clickOnElement(MobileElement mobileElement, int secondsToWait)
{
try
{
abstractPlatform.clickOnElement(mobileElement,secondsToWait);
}
catch (Exception e)
{
logError(this, "clickOnElement()", "Wasn't able to click on element"+mobileElement);
throw new NoSuchElementException("Wasn't able to click on element " + mobileElement);
}
}
Теперь в этом случае я создал метод, который регистрировал исключения для этого конкретного метода, и, просматривая журналы, я мог бы бытьв состоянии выяснить причину исключения.Но давайте предположим, что этот кусок кода используется в API.
И, как разработчик API, я хочу вернуть определенный код состояния вместо того, чтобы показывать сообщение об исключении, отправленное tomcat / framework.В этом случае мы можем выбросить исключение в catch, и это исключение можно сохранить в каком-либо родительском методе или в самой платформе, если для этого есть какой-то механизм.
Так что все зависит от того, как мы его используем.