示例
测试从触发器呈现的模态框
此示例展示了如何测试通过触发器呈现的模态框。当用户点击按钮时,模态框会显示出来。
示例组件
src/Example.tsx
import { IonButton, IonModal } from '@ionic/react';
export default function Example() {
return (
<>
<IonButton id="open-modal">Open</IonButton>
<IonModal trigger="open-modal">Modal content</IonModal>
</>
);
}
测试模态框
src/Example.test.tsx
import { IonApp } from '@ionic/react';
import { fireEvent, render, screen, waitFor } from '@testing-library/react';
import Example from './Example';
test('button presents a modal when clicked', async () => {
render(
<IonApp>
<Example />
</IonApp>
);
// 模拟点击按钮
fireEvent.click(screen.getByText('Open'));
// 等待模态框呈现
await waitFor(() => {
// 断言模态框存在
expect(screen.getByText('Modal content')).toBeInTheDocument();
});
});