Javascript 如何通过酶单元测试找到元素?
我有一个单元测试,它使用一个包含有效函数的函数。是否可以从集合中选择一个节点,然后获取文本属性?我试过这个:Javascript 如何通过酶单元测试找到元素?,javascript,reactjs,chai,enzyme,Javascript,Reactjs,Chai,Enzyme,我有一个单元测试,它使用一个包含有效函数的函数。是否可以从集合中选择一个节点,然后获取文本属性?我试过这个: it('should be equaling name property', () => { const props = { myprops: [{ email: "blaat@mail.com", name: "Coco Chanel" }]
it('should be equaling name property', () => {
const props = {
myprops: [{
email: "blaat@mail.com",
name: "Coco Chanel"
}]
};
const wrapper = shallow(<ServiceDetails {...props} />);
expect(wrapper.find('div')[0].text).equals('Cici Chanel');
});
如何选择第二个div并获取该div中的值?我相信您需要唯一地标识该div:
expect(wrapper.find('section div:nth-of-type(1)').text()).equals('Cici Chanel');
或者更好:
return (
<section>
<div className="div1">{email}</div>
<div>{name}</div>
</section>
)
expect(wrapper.find('.div1').text()).equals('Cici Chanel');
返回(
{email}
{name}
)
expect(wrapper.find('.div1').text()).equals('cicichanel');
还有,不是属性。对我来说,下面的代码是有效的
const component = wrappper.find('section.div')
expect(component.at(0).text()).toEqual('Cici chanel')
return (
<section>
<div className="div1">{email}</div>
<div>{name}</div>
</section>
)
expect(wrapper.find('.div1').text()).equals('Cici Chanel');
const component = wrappper.find('section.div')
expect(component.at(0).text()).toEqual('Cici chanel')