Html 如何在TestCafe中获取下拉值的所有选项
我有一个下拉列表,其中有n个选项值。如何获取所有这些选项值,然后在一次性测试中断言它们。我在文档中没有找到任何内容。 请让我现在如何才能做到这一点 假设我有以下下拉列表:Html 如何在TestCafe中获取下拉值的所有选项,html,testing,automated-tests,e2e-testing,testcafe,Html,Testing,Automated Tests,E2e Testing,Testcafe,我有一个下拉列表,其中有n个选项值。如何获取所有这些选项值,然后在一次性测试中断言它们。我在文档中没有找到任何内容。 请让我现在如何才能做到这一点 假设我有以下下拉列表: <select id="city"> <option>New York</option> <option>London</option> <option>Paris</option> </select> 此
<select id="city">
<option>New York</option>
<option>London</option>
<option>Paris</option>
</select>
此解决方案假设页面上没有其他选项html项。这个解决方案假设在你的页面上没有其他选项html项。它们都在下面你可以找到一个类似的例子,我们将在不久的将来提供一个更广泛的例子。 在您的情况下,可以使用以下代码: 从“testcafe”导入{ClientFunction}; fixture`获取选项值` .第页`https://example.com`; const getOptionNames=ClientFunction=>{ const select=document.querySelector'city'; const options=select.querySelectorAll'option'; 常量值=[]; 选择权的出租权 values.pushoption.textContent; 返回值; }; 测试'test',异步t=>{ 等待t.expectgetOptionNames.eql['newyork','London','Paris']; };
你可以找到一个类似的例子,我们将在不久的将来提供一个更广泛的例子。 在您的情况下,可以使用以下代码: 从“testcafe”导入{ClientFunction}; fixture`获取选项值` .第页`https://example.com`; const getOptionNames=ClientFunction=>{ const select=document.querySelector'city'; const options=select.querySelectorAll'option'; 常量值=[]; 选择权的出租权 values.pushoption.textContent; 返回值; }; 测试'test',异步t=>{ 等待t.expectgetOptionNames.eql['newyork','London','Paris']; };
事实上,我正在寻找一种方法,我们可以一次验证所有项目,而不是循环通过它们。事实上,我正在寻找一种方法,我们可以一次验证所有项目,而不是循环通过它们。谢谢。但是我真的很想看到这个特性,在这里我可以一次获得数组,而不是循环通过它。JavaScript和TestCafe中都没有这样的方法。您可以创建自己的助手方法,并在必要时在测试中使用它。谢谢。但是我真的很想看到这个特性,在这里我可以一次获得数组,而不是循环通过它。JavaScript和TestCafe中都没有这样的方法。您可以创建自己的助手方法,并在必要时在测试中使用它。
test('TestCafe - Verify all Options', async (t) => {
const optionList = Selector('option');
for( var i = 0; i < await optionList.count; i++){
const optionText = await optionList.nth(i).innerText;
// Perform some validation/comparision on the text to see if it is as you expect....
}
})