使用const在人偶测试中导入定位器

时间:2019-06-21 19:28:49

标签: javascript puppeteer

我有一个对象存储库文件,其中存储了所有定位符。但是,为了提高可维护性和可读性,我现在使用const对定位器进行分组。例如:

const delivery = {
    DELIVERY_HEADING: "xpath=//div[OOtext()='Delivery']",
    DELIVERY_COUNT: '.bit-deliverylistrow'
};
const operations = {
    SAVE_AUD: '.bit-save-btn',
    SAVE_AUDNAME: "xpath=//*[text()='Audience name']/../input"
};

module.exports = { delivery, operations }

在测试中,我正在使用导入并将其用作:

const or = require('../TestData/OR');

await page.focus(or.delivery.DELIVERY_HEADING);
await page.type(or.operations.SAVE_AUDNAME,'hello');

有没有一种方法不必引用const并直接在测试中调用对象定位器,因为很难确定哪个const具有哪个定位器?

我想做await page.focus(or.DELIVERY_HEADING)

任何指针都会有所帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用跨页...创建单个对象。

module.exports = { ...delivery, ...operations }

现在可以了,

await page.focus(or.DELIVERY_HEADING)