test: Enter Compare & Anchor done.

This commit is contained in:
chiayin
2024-02-22 16:51:49 +08:00
parent f7c76fd1f7
commit b6bd1e878e
6 changed files with 103 additions and 28 deletions

48
cypress/e2e/compare.cy.js Normal file
View File

@@ -0,0 +1,48 @@
describe('Performance', ()=>{
beforeEach(() => {
cy.visit('https://REDACTED-HOST/files');
cy.login();
cy.visit('https://REDACTED-HOST/files');
cy.url().should('include', 'files');
cy.contains('li', 'COMPARE').click();
});
it('Enter Compare', () => {
const dataTransfer = new DataTransfer();
cy.url().should('include', 'files');
cy.contains('button', 'Compare').should('be.disabled'); // 斷言按鈕為禁用狀態
// 安裝套件: cypress-drag-drop
cy.get('#compareFile0').drag('#primaryDragCard');
cy.get('#compareFile1').drag('#secondaryDragCard');
// Enter Compare
cy.contains('button', 'Compare').click();
cy.contains('h2', 'COMPARE');
cy.url().should('include', 'compare');
cy.wait(2000);
// // 斷言排序
// // 斷言狀態欄
// // 斷言頁面中有 7 個 canvas 元素
cy.get('canvas').should('have.length', 7);
});
it('Anchor', () => {
// enter Map
cy.url().should('include', 'files');
cy.get('#compareFile0').drag('#primaryDragCard');
cy.get('#compareFile1').drag('#secondaryDragCard');
cy.contains('button', 'Compare').click();
cy.contains('h2', 'COMPARE');
cy.url().should('include', 'compare');
cy.wait(2000);
// Anchor 網頁不會捲動到錨點位置是因為 Cypress 是模擬使用者行為而非準確瀏覽器行為
cy.get('aside li a[href="#cycleTime"]').click();
cy.url().should('include', '#cycleTime');
cy.get('aside li a[href="#processingTime"]').click();
cy.url().should('include', '#processingTime');
cy.get('aside li a[href="#waitingTime"]').click();
cy.url().should('include', '#waitingTime');
cy.get('aside li a[href="#cases"]').click();
cy.url().should('include', '#cases');
});
})

View File

@@ -1,82 +0,0 @@
describe('Performance', ()=>{
beforeEach(() => {
cy.visit('https://REDACTED-HOST/files');
cy.login();
cy.visit('https://REDACTED-HOST/files');
});
// it('Enter Log', () => {
// // enter Map
// cy.url().should('include', 'files');
// cy.get('table tr')
// .filter(':contains("Log")')
// .first() // 選擇集合中第一個元素
// .dblclick();
// cy.contains('h2', 'DISCOVER');
// cy.url().should('include', 'discover/map/log');
// cy.wait(2000);
// // enter Performance
// cy.contains('li', 'PERFORMANCE').click();
// cy.url().should('include', 'discover/performance/log');
// // 斷言頁面中有八個 canvas 元素
// cy.get('canvas').should('have.length', 8);
// });
// it('Enter Filter', () => {
// // enter Map
// cy.url().should('include', 'files');
// cy.get('table tr')
// .filter(':contains("Filter")')
// .first()
// .dblclick();
// cy.contains('h2', 'DISCOVER');
// cy.url().should('include', 'discover/map/filter');
// cy.wait(2000);
// // enter Performance
// cy.contains('li', 'PERFORMANCE').click();
// cy.url().should('include', 'discover/performance/filter');
// // 斷言頁面中有八個 canvas 元素
// cy.get('canvas').should('have.length', 8);
// });
// it('Enter Rule', () => {
// // enter Map
// cy.url().should('include', 'files');
// cy.get('table tr')
// .filter(':contains("Rule")')
// .first()
// .dblclick();
// cy.contains('h2', 'DISCOVER');
// cy.url().should('include', 'conformance');
// cy.wait(2000);
// // enter Performance
// cy.contains('li', 'PERFORMANCE').click();
// cy.url().should('include', 'discover/performance');
// // 斷言頁面中有八個 canvas 元素
// cy.get('canvas').should('have.length', 8);
// });
it('Anchor', () => {
// enter Map
cy.url().should('include', 'files');
cy.get('table tr')
.filter(':contains("Log")')
.first() // 選擇集合中第一個元素
.dblclick();
cy.contains('h2', 'DISCOVER');
cy.url().should('include', 'discover/map/log');
cy.wait(2000);
// enter Performance
cy.contains('li', 'PERFORMANCE').click();
cy.url().should('include', 'discover/performance/log');
// Anchor 網頁不會捲動到錨點位置是因為 Cypress 是模擬使用者行為而非準確瀏覽器行為
cy.get('aside li a[href="#cycleTime"]').click();
cy.url().should('include', '#cycleTime');
cy.get('aside li a[href="#processingTime"]').click();
cy.url().should('include', '#processingTime');
cy.get('aside li a[href="#waitingTime"]').click();
cy.url().should('include', '#waitingTime');
cy.get('aside li a[href="#cases"]').click();
cy.url().should('include', '#cases');
});
})