javascript - 如何编写测试以检查是否在 Jest 中为 React 应用程序设置了输入字段的值?
问题描述
我创建了一个登录表单并正在使用 Jest 对其进行测试。我在使用带有更改的模拟来检查值是否已设置时遇到问题。已提供代码供参考。
Login.js(用户名的输入字段)
<Form onSubmit={handleSubmit}>
<Form.Group className="form-elements" controlId="nameForm">
<Form.Label className="form-label">Username:</Form.Label>
<Form.Control className="form-control" type="text" name="username" value={name} required placeholder="Enter name" onChange={(e)=>setName(e.target.value)}/>
</Form.Group>
Login.test.js - 检查用户名的测试用例
describe('Test case for testing login',() =>{
let wrapper;
test('username check',()=>
{
wrapper = shallow(<Login/>);
const ele = wrapper.find("FormControl[type='text']")
ele.simulate("change", {target: { name:'username',value: 'UserFirst'}});
console.log(...ele);
expect(ele).toHaveProperty('value', 'UserFirst')
})
})
console.log(...ele) 的结果是:
这可能是什么解决方案?
解决方案
推荐阅读
- acumatica - 当我使用 Acumatica 代码在销售订单屏幕上单击自定义操作时,我们如何附加报告 PDF/Excel 文件
- yii2 - YII2模型关系输出gridview
- sql - JSONB 中的 Postgres 搜索
- swift - 在 macOS 上的 SwiftUI NavigationView 中切换侧边栏
- r - 没有 timezome 的 as.Date({"POSIXct" "POSIXt"}) 中的错误
- discord.js - 我的 Discord 机器人不断收到错误消息
- jersey - 如何在 WAR 中公开两个具有相同路径的 JAX-RS 资源
- javascript - 有没有办法从 chrome.contextMenu.create 获取图像的 alt 标签
- laravel - 使用 laravel orm 时出现错误“在 null 上调用成员函数 count()”
- tensorflow - tf.keras.layers.Conv1D 是否支持 RaggedTensor 输入?