Vue Test Utils - ожидайте обещаний о проверочных тестах, требующих все больше времени - PullRequest
1 голос
/ 28 мая 2019

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

wrapper = shallowMount(SetPasswordForm, {
      i18n,
      sync: false,
      localVue,
      propsData: {
        user: {
          emailAddress: 'afake@email.com'
        }
      }
    })

Задайте данные, нажмите «Отправить», а затем await flushPromises, чтобы указать время подтверждения предупреждений.

  it('renders minimum length error and has no match error', async () => {
    wrapper.setData({
      password: 'sut',
      confirmPassword: 'sut'
    })

    wrapper.find('button.primary-action-btn').trigger('click')
    await flushPromises()

    expect(wrapper.text()).to.include('This field has a min length of 10')
    expect(wrapper.vm.errors.count()).to.equal(2)
  })

Тем не менее, мы делаем это во всем приложении, и каждый тест, который использует await flushPromises, выполняется все дольше. Я говорю об увеличении примерно на 100 мс каждый тест. У нас 180 модульных тестов, и финальные тесты в наборе занимают до 3 секунд.

Это нормально? Я не думаю, что это так. Мы слишком часто звоним await flushPromises? Это проблема нашего набора тестов или утечка памяти?

Edit: Выпуск Github: https://github.com/baianat/vee-validate/issues/2095

...