gpt4 book ai didi

javascript - CodeceptJS/Puppeteer 无法识别 'if' 语句

转载 作者:行者123 更新时间:2023-12-02 22:44:35 25 4
gpt4 key购买 nike

不太熟悉 js/node.js。使用 codeceptjs/puppeteer 进行一些自动化测试。现在正在尝试编辑测试中的描述。但有时没有描述 - 因此“编辑描述”按钮不存在 - 而是有一个“添加描述”按钮。所以我写了一个 if 语句来指定 .但代码只是滚动它。语句是什么并不重要,它只是移动到下一行。目前,if (desc)if(!desc) 都执行相同的功能 - 它转到 if 语句中的下一行。这会导致错误,因为已有描述,因此“添加描述”按钮不可用。我不确定发生了什么。

Scenario('test something', (I, userLoginPage, FBPagePage) => {


userLoginPage.validate();


I.click('//*[@id="card_611"]');
// clicks the card

var desc = '//*[@id="show_card_description"]/section/button';
// add description button
// tried 'Add description' but the result was the same

if (desc){
// this is where the error happens. it simply looks for the add description button
// no matter what button is there it decides to click the 'add description' button

I.click('//*[@id="show_card_description"]/section/button');
// click add desc button

I.fillField('//*[@id="description_editor_container"]/div[2]/div[1]',
'not admin user created this description thanks to automated testing');
// types this stuff
I.click('//*[@id="description_editor_container"]/button[1]');
// saves it
I.wait(1);
}

I.click('//*[@id="show_card_description"]/section/h5/a');
// click edit desc button if a description already exists
I.fillField('//*[@id="description_editor_container"]/div[2]/div[1]', 'not admin user edited this description thanks to automated testing');
I.click('//*[@id="description_editor_container"]/button[1]');


I.say('success!')
});

最佳答案

给你正确的上下文:你首先问的是 Node.js 问题,而不是 CodeceptJS 或 Puppeteer。

desc 始终为 true 因为您将其声明为字符串,因此无论 if 内的代码将运行什么,就像您一样已经发现了。

您可以使用以下方法:

const numOfElements = await I.grabNumberOfVisibleElements('#show_card_description section button'); // Use CSS locator instead of Xpath for easier readability

console.log(numOfElements); // Debug

if(numOfElements === 1) {

}

另请参阅https://codecept.io/helpers/Puppeteer#grabnumberofvisibleelements

关于javascript - CodeceptJS/Puppeteer 无法识别 'if' 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58459223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com