我正在通过我的反应应用程序并实施我的测试,我无法弄清楚如何测试svg圈的半径 . 半径通过道具向下传递 . 我的React组件如下;

import * as React from 'react';

export interface Props {
    radius: number
}

const UserPicture = (props: Props) => {

    var diameter = props.radius * 2;

    return (
        <svg className="userPicture" height={diameter} width={diameter}>
            <circle cx={props.radius} cy={props.radius} r={props.radius} stroke="black" fill="white" />
        </svg>
        )
}

export default UserPicture;

...而我目前无法上班的测试如下所示 .

test('User Picture renders svg > circle element with correct radius passed by props second test', () => {
    const radius = 15;
    const userPicture = Enzyme.shallow(<UserPicture radius={radius} />);
    expect(userPicture.find('svg > circle').at(0).prop("r")).toBe(radius);
});

我知道这个测试是找到圆圈,因为我有一个"must render without crashing"函数工作,但上面的测试返回undefined . 似乎没有办法使用酶返回高度,宽度或任何东西(除非通过 .prop ),我错过了什么?如何测试svg圆的半径?