/// <summary> /// Нажатие на кнопку запуска тестов /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bDo_Click(object sender, EventArgs e) { var currentProcess = System.Diagnostics.Process.GetCurrentProcess(); var threads = new List <Thread>(); //Отключаем перехват вызовов в ошибочном потоке //ToDo: сделать нормальную многопоточность для записи в лог на форме. Control.CheckForIllegalCrossThreadCalls = false; //проверка всех урлов сайта string address = null; if (tcMain.SelectedTab == tcMain.TabPages["tpVarious"] && cbCheckAllSite.Checked) { if (tbCheckUrlsUrlToCheck.Text != "") { string[] siteList = tbCheckUrlsUrlToCheck.Text.Split(new Char[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries); for (int siteID = 0; siteID < siteList.Length; siteID++) { address = siteList[siteID]; threads.Add(new Thread(() => CheckUrls.Run(address.Trim()))); } } else { Log.MesError("Введите урл для проверки"); } } //проверка всех компонентов установки if (tcMain.SelectedTab == tcMain.TabPages["tpComponents"] && cbCheckAllComponents.Checked) { threads.Add(new Thread(() => ComponentsTest.Run("BB", "mysql"))); } #region БУС //Для каждого из отмеченных тестов добавляем поток в пул потоков if (tcMain.SelectedTab == tcMain.TabPages["tpBUS"]) { if (cbMainTest.Checked) { threads.Add(new Thread(() => Case_Main_Run.Run())); } if (cbSaleTest.Checked) { threads.Add(new Thread(() => Case_Sale_Run.Run())); } } #endregion //Запускаем потоки из пула foreach (var thread in threads) { thread.Start(); thread.Join(); } //Завершаем тест и закрываем браузер и связанные с ним сущности BitrixFramework.WebDriver.Quit(); }
/// <summary> /// Нажатие на кнопку запуска тестов /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bDo_Click(object sender, EventArgs e) { var currentProcess = System.Diagnostics.Process.GetCurrentProcess(); var threads = new List <Thread>(); Control.CheckForIllegalCrossThreadCalls = false; //проверка всех урлов сайта string address = null; if (tcMain.SelectedTab == tcMain.TabPages["tpVarious"] && cbCheckAllSite.Checked) { if (tbCheckUrlsUrlToCheck.Text != "") { string[] siteList = tbCheckUrlsUrlToCheck.Text.Split(new Char[] { '\n', '\r' }, StringSplitOptions.RemoveEmptyEntries); for (int siteID = 0; siteID < siteList.Length; siteID++) { address = siteList[siteID]; threads.Add(new Thread(() => CheckUrls.Run(address.Trim()))); } } else { Log.MesError("Введите урл для проверки"); } } //проверка всех компонентов установки if (tcMain.SelectedTab == tcMain.TabPages["tpComponents"] && cbCheckAllComponents.Checked) { threads.Add(new Thread(() => ComponentsTest.Run("BB", "mysql"))); } #region БУС if (tcMain.SelectedTab == tcMain.TabPages["tpBUS"]) { if (cbMainTest.Checked) { threads.Add(new Thread(() => Case_Main_Run.Run())); } if (cbSaleTest.Checked) { threads.Add(new Thread(() => Case_Sale_Run.Run())); } } #endregion foreach (var thread in threads) { thread.Start(); thread.Join(); } }