所以我试图自动化在https://www.business.att.com/disconnects/上填写网络表单的过程。
我正在使用 Playwright 测试工具使用 JavaScript 自动执行此过程
我有剧作家中概述的步骤:
const { test, expect } = require('@playwright/test');
test('filling out ATT disconnect webform', async ({ page }) => {
await page.goto('https://www.business.att.com/disconnects/');
await page.click('select[name="region"]');
await page.selectOption('select[name="region"]', "ES");
await page.selectOption('select[name="service"]', 'ZH:E2');
await page.click('text=Desired Disconnect Date');
// This RequestedDisconnectDate is one of the values I want to pull from a local csv. I have it hard coded for now
await page.fill('input[name="RequestedDisconnectDate"]', '01/12/2022');
await page.click('a:has-text("12")');
// For "Disconnect Reason", ALWAYS select = "Other"
await page.click('select[name="ReasonForDisconnect"]');
await page.selectOption('select[name="ReasonForDisconnect"]', '31');
// For "Reason Other", ALWAYS fill = "Other"
await page.click('input[name="ReasonForDisconnectOther"]');
await page.fill('input[name="ReasonForDisconnectOther"]', 'Other');
// ...
await page.click('input[alt="Submit"]');
});
我试图传递的一些值是恒定的,但其他值是可变的。例如,RequestedDisconnectDate 存储在 csv 中。我想从保存在本地计算机上的 csv 中提取的那些值。但我不确定如何进行该过程。我一直在研究 js 库解决方案和 npm 包,例如 csv-parser 和 jquery。但我不确定如何解决。
如果有人能给我一个关于如何解决这个问题的想法,那将不胜感激。谢谢