我在测试中打开了两个模态,我希望能够单击第二个模态(以下html中的第二个所选元素)中的“确定”按钮。
我当前的代码是:
import { waitForReact } from 'testcafe-react-selectors';
import { Selector } from 'testcafe';
fixture `App tests`
.page('http://localhost:3000/')
.beforeEach(async () => {
await waitForReact();
});
test('Can open and accept all pop ups', async t => {
//open first modal
await t
.click('#LayerAddingPopUpButtonID');
//select OK button from first modal
const modalOKButton = Selector('div.ant-modal')
.find('div.ant-modal-footer')
.find('button.ant-btn-primary');
//click OK button from first modal
await t
.expect(modalOKButton.with({visibilityCheck: true}).exists)
.ok({timeout: 30000})
.hover(modalOKButton)
.click(modalOKButton);
//open second modal
await t
.click('#LayerDeletingPopUpButtonID');
//select OK button from second modal
const secondModalOKButton = Selector(??);
});
我正在使用的html如下。我正在尝试选择第二个“确定”按钮:
最佳答案
您是否尝试使用nth
?
const modalOKButton = Selector('div.ant-modal').nth(1)
.find('div.ant-modal-footer')
.find('button.ant-btn-primary');
或者尝试通过
aria-labelledby
使用选择器const modalOKButton = Selector("[aria-labelledby='rcDialogTitle1']")
.find('div.ant-modal-footer')
.find('button.ant-btn-primary');
关于javascript - 从在testcafe中打开的第N个模式中选择“确定”按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55364138/