BitrixAQA.General.Shared.Execute C# (CSharp) Method

Execute() public static method

Метод выполняет последовательно действия, переданные в него коллекцией. В зависимости от значения cbDebugMode, метод завершает текущее действие и переходит к следующему при появлении исключения, либо останавливается на исключении.
public static Execute ( List TestCases ) : void
TestCases List Список действий (методов) для последовательного выполнения. Методы не должны возвращать значение
return void
        public static void Execute(List<Action> TestCases)
        {
            foreach (Action TestCase in TestCases)
            {
                try
                {
                    TestCase.Invoke();
                }
                catch (OpenQA.Selenium.UnhandledAlertException)
                {
                    Log.MesQuestion("неожиданное модальное окно. <a href=\"" + ScreenCapture.Printscreen() + "\">скриншот</a>");
                    BitrixFramework.Wait(5);
                    BitrixFramework.BrowserAlert(false);
                    Log.NodeClose();
                }
                catch (WebException e)
                {
                    Log.MesError("Словили Вэб-эксепшен =( Видимо отвалился вебдрайвер.\r\n" + e.Message + "\r\n" + e.StackTrace +
                        "\r\nStatus Code : " + ((HttpWebResponse)e.Response).StatusCode +
                        "\r\nStatus Description : " + ((HttpWebResponse)e.Response).StatusDescription);
                    Log.NodeClose();
                }
                catch (OpenQA.Selenium.WebDriverException e)
                {
                    Log.MesError("Словили Вэб-эксепшен =( \r\n" + e.Message + "\r\n" + e.StackTrace);
                    BitrixFramework.Refresh();
                    Log.NodeClose();
                }
                catch (Exception Ex)
                {
                    Log.MesError(Ex.Message + "\r\n" + Ex.StackTrace);
                    Log.NodeClose();
                }
            }
        }