Экран записи трудностей для тестов пользовательского интерфейса в. NET Core - PullRequest
0 голосов
/ 12 февраля 2020

Фон

Я использую Selenium в базовом проекте. NET (C#) для тестирования пользовательского интерфейса моего веб-приложения. Тесты выполняются в размещенных агентах в Azure DevOps (windows-2019).

Цель

Я хотел бы получить экранную запись каждого теста, который не был подключен к выводу теста.

Проблема

Сначала я попытался выполнить этот урок , чтобы настроить Microsoft.Expression.Encoder, но столкнулся с некоторыми проблемами:

  1. Когда я добавил пакет NuGet, я получил предупреждение о том, что

Пакет 'Microsoft.Expression.Encoder 4.0.4276.3' был восстановлен с использованием '.NETFramework, Version = v4.6.1 , .NETFramework, Версия = v4.6.2, .NETFramework, Версия = v4.7, .NETFramework, Версия = v4.7.1, .NETFramework, Версия = v4.7.2, .NETFramework, Версия = v4.8 'вместо проекта целевой фреймворк .NETCoreApp, версия = v2.1. Этот пакет может быть не полностью совместим с вашим проектом.

Когда я запустил тест, я получил ошибку времени выполнения:

System.BadImageFormatException: «Не удалось загрузить файл или сборку» Microsoft.Expression.Encoder, Version = 4.0.0.0, Культура = нейтральная, PublicKeyToken = 31bf3856ad364e35 '. Была предпринята попытка загрузить программу с неверным форматом. '

После этой ТАКОЙ записи и этой ветки MSDN я попытался изменить свой проект на целевой x86, но получил то же BadImageFormatException, что и выше.

Остальные теории

  • Возможно, Expression Encoder работает только на. NET Framework, а не. NET Core?
  • Пакет Expression Encoder NuGet последний раз обновлялся в 2016 году, так что, возможно, Я должен искать более современный пакет?

Вопросы

  1. Можно ли использовать Expression Encoder в. NET Основные проекты, и разумно ли это делать так учитывая возраст и условия обслуживания пакета?
  2. Какие пакеты захвата экрана там поддерживаются. NET Core? Я посмотрел многие учебные пособия по записи экрана Selenium и нашел некоторую справку, применимую для Java или. NET Standard, но не так сильно, как. NET Core. Я потратил довольно много времени на поиск ответов в Интернете, но ничто не выглядит достаточно современно, чтобы быть действительным в текущих версиях Windows и. NET Core.

Если мой Вопрос нуждается в уточнении или дополнительной информации, пожалуйста, дайте мне знать. Спасибо!

...