123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 |
- /**
- * HistoryPage - History列表页面的Page Object Model
- * 用于History界面的元素选择器和操作方法
- */
- class HistoryPage {
- /**
- * 获取表格
- */
- getTable() {
- return cy.get('table');
- }
- /**
- * 双击表格第一行
- */
- findTableAndDoubleClickFirstRow() {
- cy.get('table').within(() => {
- cy.get('tbody tr[data-testid="row-0"]')
- .scrollIntoView()
- .should('be.visible')
- .dblclick({ force: true });
- });
- }
- /**
- * 点击指定索引的行
- * @param index 行索引(从0开始)
- */
- clickRowByIndex(index: number) {
- cy.get('table').within(() => {
- cy.get(`tbody tr[data-testid="row-${index}"]`)
- .scrollIntoView()
- .should('be.visible')
- .click({ force: true });
- });
- }
- /**
- * 验证指定行被选中(黄色高亮)
- * @param index 行索引(从0开始)
- */
- verifyRowSelected(index: number) {
- cy.get('table').within(() => {
- cy.get(`tbody tr[data-testid="row-${index}"]`)
- .should('be.visible')
- .should('have.class', 'bg-yellow-500');
- });
- }
- /**
- * 点击删除按钮
- */
- clickDeleteButton() {
- cy.get('[data-testid="delete-button"]').click();
- }
- /**
- * 获取删除确认对话框
- */
- getDeleteConfirmModal() {
- return cy.get('.ant-modal-confirm').should('be.visible');
- }
- /**
- * 在对话框中确认删除
- */
- confirmDeleteInModal() {
- cy.get('[data-testid="modal-confirm-delete"]').click();
- }
- /**
- * 在对话框中取消删除
- */
- cancelDeleteInModal() {
- cy.get('[data-testid="modal-cancel-delete"]').click();
- }
- /**
- * 验证删除成功提示消息
- */
- verifyDeleteSuccessMessage() {
- cy.contains('删除成功').should('be.visible');
- }
- /**
- * 验证删除警告消息
- * @param expectedMessage 期望的警告消息文本
- */
- verifyDeleteWarningMessage(expectedMessage: string) {
- cy.contains(expectedMessage).should('be.visible');
- }
- /**
- * 验证删除错误消息
- */
- verifyDeleteErrorMessage() {
- cy.contains('删除失败').should('be.visible');
- }
- /**
- * 验证表格行数
- * @param expectedCount 期望的行数
- */
- verifyRowCount(expectedCount: number) {
- cy.get('table tbody tr').should('have.length.at.least', expectedCount);
- }
- /**
- * 验证对话框不存在
- */
- verifyModalNotExist() {
- cy.get('.ant-modal-confirm').should('not.exist');
- }
- }
- export default HistoryPage;
|