Диалог тестирования кукловода / модальные поля ввода - PullRequest
1 голос
/ 30 апреля 2020

Я новичок в Puppeteer и использую его для сквозной веб-страницы с модальным способом ввода платежных реквизитов. Моя цель состоит в том, чтобы проверить все поля ввода и передать введенные данные.

Ожидаемый результат - Нажмите модальную кнопку> открыть модальный> ввод данных в текстовое поле> отправить данные

Фактический результат - Нажмите на модальную кнопку> С этого момента ничего не происходит, и при этом никакая сумма фактически не отправляется в API, но тест проходит

// Require puppeteer
const puppeteer = require('puppeteer');

let browser;
let page;
const appUrlBase = 'http://localhost:8080';

// Create an instance of the chrome browser
beforeAll(async () => {
    browser = await puppeteer.launch({
        headless: false,
        devtools: true
    });

    page = await browser.newPage();
});

describe('Payment test', () => {
    jest.setTimeout(600000);
    test('payment dialog box', async () => {
        await page.waitForSelector('[data-testid="payBtn"]')
        await page.click('[data-testid="payBtn"]') // Modal button
        await page.on('dialog', async dialog => {
            await page.waitForSelector('[data-testid="paymentContainer"]')
            await page.click('[data-testid="payAmount"]') // input field for payment amount
            await page.type(300)
            await page.click('[data-testid="paymentPayBtn"]')
            await dialog.dismiss()
        })
        await browser.close()
    });
});

Где-то я не так?

...