reactjs - 如何在 react-testing-library 中获取具有“name”属性的元素
问题描述
我正在使用反应测试库和玩笑测试我的反应应用程序。
而且我想知道如何在 react-testing-library 中获取具有 'name' 属性的元素。
例如,在以下页面中,是否可以使用“userName”获取此元素?
<input type="text" name="userName" />
或者我应该设置data-testId
元素和使用getByTestId
方法?
return (
<div>
<input type="text" name="userName" />
</div>
)
解决方案
您可以使用返回的container
. container
是一个 DOM 节点并支持querySelector
方法,该方法接受 CSS 选择器来查找元素。与这个更详细的答案相同的方法。
例如:
const { container } = render(<MyComponent />);
const inputEl = container.querySelector(`input[name="userName"]`);
推荐阅读
- r - 使用(如果可能)函数方法基于正则表达式 (regex) 的向量修改向量
- angular - Angular Rxjs - 条件运算符
- openstack-autopilot - 你能用不同的语言发送自动驾驶信息吗?
- java - 这种具有二分搜索和while循环的算法的时间复杂度是多少?
- powershell - 使用 PowerShell -Pattern 在多个文件中搜索多个值
- vulkan - 尝试为 3D 图像创建 2D 阵列图像视图时出现 Vulkan 验证错误
- alert - Alertmanager,不同警报规则的不同间隔
- r - 基于不同列的R数据表styleColorBar
- elasticsearch - 在 Elasticsearch 中,有没有办法为复合查询中的每个查询获取 hits.total.value?
- parameters - 有没有办法将参数作为数据阶段中参数的默认值传递?