Как одновременно с открытием вкладки браузера запустить таймер?

csharp
webdriver
Теги: #<Tag:0x00007fedb69af938> #<Tag:0x00007fedb69af7f8>

(It Ot) #1

Используется: C#, WebDriver

СЦЕНАРИЙ
1. Открываем браузер
2. Переходим по ссылке
Запускаем Таймер (секундомер)
3. Ожидание 5 сек
4. Закрываем вкладку
Останавливаем Таймер (секундомер)

Формат значения таймера:
- в виде одной цифры. Пример: 1 мин 30 сек в таймере отображается как 90 сек.
- таймер работает по возрастанию (т.е. 1 сек, 2 сек… А не 2 сек, 1 сек.)
Данные Таймера отображаются в label.

Попробовал так…

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
using OpenQA.Selenium;
using OpenQA.Selenium.Support.UI;
using System.Threading; // потоки
using System.Threading.Tasks; // потоки           
 
 private void timer1_Tick(object sender, EventArgs e)
        {
            i++ ;
            label9.Text = i.ToString();
 
        }
 
 
private void mythread1()
{
timer1.Enabled = !timer1.Enabled;            
}
 
private void mythread2()
{
i++;
label9.Text = i.ToString();        
}
 
private void mythread3()
{
timer1.Stop();
}
 
private void button6_Click(object sender, EventArgs e)
        {
           // ПОТОКи
            Thread thread1 = new Thread(mythread1);
            Thread thread2 = new Thread(mythread2);
            Thread thread3 = new Thread(mythread3);
 
            thread1.Start();
            thread2.Start();
 
            // ОТКРЫТЬ БРАУЗЕР
            OpenQA.Selenium.Chrome.ChromeOptions co = new OpenQA.Selenium.Chrome.ChromeOptions();
            co.BinaryLocation = @"c:\soft\UD\GoogleChromePortable\1_1\GoogleChromePortable_1.exe";
            co.AddArguments(@"user-data-dir=c:\soft\UD\GoogleChromePortable\1_1\Data\profile\");
 
 
            Browser = new OpenQA.Selenium.Chrome.ChromeDriver(co);
            Browser.Navigate().GoToUrl("https://www.yandex.ru"); // ПЕРЕХОД. СПИСОК ВИДЕО
            System.Threading.Thread.Sleep(5000); // пауза
 
            Browser.Close();
            thread3.Start();
        }

PS
C# только начинаю осваивать .


#2

А зачем?


(Ramon Menezes) #3
  • а не занимаеться ли автор ненужным делом?
    как ты собрался вставить лейбу на страницу яндекса (в твоем случае)?
    по поводу таймеров…чуть позже поищу пример кода, у меня была похожая задача, замер времени от момента нажатия на кнопку до момента завершения отработки всех скриптов на странице