Шаги тестового отчета не синхронизированы

Важно!

Прекращение поддержки Центра приложений Visual Studio запланировано на 31 марта 2025 г. Хотя вы можете продолжать использовать Центр приложений Visual Studio, пока он не будет полностью выведен из эксплуатации, существует несколько рекомендуемых вариантов, на которые вы можете рассмотреть возможность миграции.

Узнайте больше о сроках поддержки и альтернативных вариантах.

Тест в Центре приложений создает тестовые отчеты, которые синхронизируют каждый тест и тестовый шаг между используемыми устройствами. Для упорядочения отчетов тест использует имена файлов и порядок снимков экрана, которые он делает.

Если набор тестов работает на нескольких устройствах и позволяет устройствам проходить по-разному в тестовом коде, шаги тестирования могут отображаться в отчете не по порядку, пропускаться или дублироваться. В сводке отчета тесты с этими симптомами не считаются неудачными.

В следующих примерах псевдокода демонстрируется эта проблема и ее решение.

Псевдокод для воспроизведения проблемы

Этот пример создает несоответствия в тестовом отчете, если применяются оба следующих условия:

  • Тест выполняется на нескольких устройствах.
  • По крайней мере одно устройство принимает каждый путь кода.
if(bool)
{
    // code to run if true
    app.Screenshot("True");
} else 
{
    // code to run if false
    app.Screenshot("False");
};

Обходной путь псевдокода

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

if(bool)
{
    // code to run if true
    app.Screenshot("Result");
} else 
{
    // code to run if false
    app.Screenshot("Result");
};