3
我正在測試反應組件,並需要模擬組件內特定元素的單擊。我不想僅僅爲了測試而添加id
,有沒有辦法通過文本選擇這個元素?通過來自React組件的文本選擇DOM元素
const ReactTestUtils = require('react-test-utils');
const Sidebar = require('components/sidebar');
describe('clicking on More button', function() {
it('triggers analytics event', function() {
const component = renderComponent(<Sidebar policyPreferences={ this.policyPreferences } />);
const moreButton = component.getDOMElementByText('More'); // <- I need something like this
ReactTestUtils.Simulate.click(moreButton);
expect(analytics.track).toHaveBeenCalled();
}
}
你可以寫一個使用.innerHTML() –
感謝@ChrisWissmach功能。任何想法如何使用'.innerHTML()'選擇該元素? –