使用TestCafe Selector,如何在< select>中验证所选项目的文本?

奈克

我正在使用TestCafe 1.8.1,并且案例与https://devexpress.github.io/testcafe/documentation/recipes/test-select-elements.html上的文档略有不同-我的问题是示例假定value一个<option>和它的文本内容将是相同的,在我的情况下,value是非常不可预测的值。

我可以毫无问题地在下拉菜单中选择一个项目,.withText(value)用于过滤选项并.click(item)选择它。但是,我的应用程序随后刷新了页面,并应在加载时重新选择相关项目。这是行不通的,我想测试一下。

所以我可能在选择中有一些选项,例如:

<select id="foo">
  <option value="1234">100x100</option>
  <option value="5432">200x100</option>
  <option value="9999">100x200</option>
</select>

显然,如果我使用.expect(citySelect.value).eql('London');docs进行测试,则会失败,因为这些值与文本内容完全不同,例如,在下拉列表中单击“ 200x100”,则该值将变为“ 5432”。

我是否需要使用aClientFunction来获取所选项目的文本?我知道将数据传递到ClientFunction相当尴尬,我是否需要传递idselect的内容,以便ClientFunction可以getElementById找到select并检索其selected选项的文本内容?听起来一切都做错了。

aleks-pro

请检查以下使用ClientFunctionAPI获取option值的示例

import { Selector, ClientFunction } from 'testcafe';

fixture `Fixture 1`
    .page `https://kys0l.csb.app/`;

test('Test 1', async t => {
    const selector = Selector('select');

    const getValue = ClientFunction((index) => {
            const select = selector();

            return select.options[index].value;
    }, { dependencies: { selector } });

    await t
        .expect(getValue(0)).eql('1234')
        .expect(getValue(1)).eql('5432')
        .expect(getValue(2)).eql('9999');
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在自动完成中获取所选项目的价值

来自分类Dev

如何在微调器中设置所选项目的颜色?

来自分类Dev

如何在微调器中设置所选项目的颜色?

来自分类Dev

Android-如何在下拉菜单中更改所选项目的背景颜色

来自分类Dev

如何使用jQueryUI Selectenu获取更改时所选项目的值

来自分类Dev

如何验证列表中的所选项目?

来自分类Dev

如何从MVC中的DropDownList检索所选项目的文本和值

来自分类Dev

如何在列表框中访问所选项目的属性并将其粘贴到文本框中

来自分类Dev

如何在不倒翁中更改所选项目的颜色

来自分类Dev

如何使用php从下拉菜单中获取所选项目的值

来自分类Dev

TestCafe无法使用Selector.withText()过滤<tspan>

来自分类Dev

如何在&lt; br&gt;之后编写文本的xpath 使用TestCaf&#233;标记?

来自分类Dev

如何使用Firebase回收器适配器更改所选项目的颜色?

来自分类Dev

如何使用findIndex()在JS中查找所选项目的索引?

来自分类Dev

TestCafe Studio:如何导入ES模块,以便可以在TestCafe脚本中使用它们?

来自分类Dev

如何使用testcafe在monaco编辑器上删除或替换文本?

来自分类Dev

如何在testcafe中模拟Date()?

来自分类Dev

如何使用JavaScript在Selenium WebDriver中选择和验证所选项目

来自分类Dev

如何在自动完成中获取所选项目的价值

来自分类Dev

如何在微调器中设置所选项目的颜色?

来自分类Dev

如何在Kendo UI网格中访问所选项目的模型

来自分类Dev

如何在Html.Listbox中设置所选项目的文本颜色

来自分类Dev

如何在KnockoutJS中获取所选项目的ID

来自分类Dev

如何在托管bean中获取所选项目的标签

来自分类Dev

如何从QT中的QListView获取所选项目的文本?

来自分类Dev

如何在“选择”元素中设置所选项目的背景色?

来自分类Dev

如何将 TextView 的文本设置为微调器上所选项目的内容?

来自分类Dev

如何使用 MVVM 从 DataGrid 传递有关所选项目的信息

来自分类Dev

如何使用伪类更改多选列表中所选项目的背景颜色

Related 相关文章

  1. 1

    如何在自动完成中获取所选项目的价值

  2. 2

    如何在微调器中设置所选项目的颜色?

  3. 3

    如何在微调器中设置所选项目的颜色?

  4. 4

    Android-如何在下拉菜单中更改所选项目的背景颜色

  5. 5

    如何使用jQueryUI Selectenu获取更改时所选项目的值

  6. 6

    如何验证列表中的所选项目?

  7. 7

    如何从MVC中的DropDownList检索所选项目的文本和值

  8. 8

    如何在列表框中访问所选项目的属性并将其粘贴到文本框中

  9. 9

    如何在不倒翁中更改所选项目的颜色

  10. 10

    如何使用php从下拉菜单中获取所选项目的值

  11. 11

    TestCafe无法使用Selector.withText()过滤<tspan>

  12. 12

    如何在&lt; br&gt;之后编写文本的xpath 使用TestCaf&#233;标记?

  13. 13

    如何使用Firebase回收器适配器更改所选项目的颜色?

  14. 14

    如何使用findIndex()在JS中查找所选项目的索引?

  15. 15

    TestCafe Studio:如何导入ES模块,以便可以在TestCafe脚本中使用它们?

  16. 16

    如何使用testcafe在monaco编辑器上删除或替换文本?

  17. 17

    如何在testcafe中模拟Date()?

  18. 18

    如何使用JavaScript在Selenium WebDriver中选择和验证所选项目

  19. 19

    如何在自动完成中获取所选项目的价值

  20. 20

    如何在微调器中设置所选项目的颜色?

  21. 21

    如何在Kendo UI网格中访问所选项目的模型

  22. 22

    如何在Html.Listbox中设置所选项目的文本颜色

  23. 23

    如何在KnockoutJS中获取所选项目的ID

  24. 24

    如何在托管bean中获取所选项目的标签

  25. 25

    如何从QT中的QListView获取所选项目的文本?

  26. 26

    如何在“选择”元素中设置所选项目的背景色?

  27. 27

    如何将 TextView 的文本设置为微调器上所选项目的内容?

  28. 28

    如何使用 MVVM 从 DataGrid 传递有关所选项目的信息

  29. 29

    如何使用伪类更改多选列表中所选项目的背景颜色

热门标签

归档