/ / Тест-виклик проекту для інстанціювання вікон висить при використанні BackgroundWorker - wpf, тестування, автоматизованих тестів, фонового робочого

Виклик тестового проекту на інстанцію Вікно зависає під час використання BackgroundWorker - wpf, тестування, автоматизовані тести, backgroundworker

Я намагаюся створити тестовий набір длянещодавно написаний додаток WPF / C # Я не використовував будь-яку схему MVVM, яка, як я розумію, ускладнює автоматичне тестування набагато складніше, але це поточний стан речей, і мій начальник не збирається давати мені додатковий час на перезапис. Тому я намагаюся зробити найкраще із ситуації.

У своєму тестовому проекті я телефоную на MainWindow() ctor. Я починаю свою DoWork спосіб a BackgroundWorker безпосередньо перед її створенням, щоб мати можливість надсилати натискання клавіш через (Action)delegate через вікно "s Dispatcher. Однак, коли я дзвоню bgWorker.RunWorkerAsync() перед тим як зателефонувати MainWindow ctor, ctor не виконується (я ставлю в ньому точки прориву і нада). Якщо я видалю дзвінок на RunWorkerAsync тоді ctor працює правильно. Що я тут пропускаю?

Відповіді:

0 для відповіді № 1

Нижче представлена ​​реалізація BackgroundWorker.

IsVMBusy = вірно;

var worker = новий BackgroundWorker ();

робітник.До роботи + = (о, еа) =>

   {

//Do task here

};

робітник.RunWorkerCompleted + = (о, еа) =>

        {
IsVMBusy = false;
};
IsVMBusy = true;
worker.RunWorkerAsync();