75 lines
2.8 KiB
JavaScript
75 lines
2.8 KiB
JavaScript
// 每一 describe 就是一個測試套件
|
|
// 每一 it 就是一個測試命令
|
|
describe('Save Log and Filter', ()=>{
|
|
beforeEach(() => {
|
|
cy.visit('https://REDACTED-HOST/files');
|
|
cy.login();
|
|
cy.visit('https://REDACTED-HOST/files');
|
|
});
|
|
|
|
it('save log', () => {
|
|
// enter log
|
|
cy.url().should('include', 'files');
|
|
cy.contains('.fileName', 'random').dblclick(); // 選取 'random' log 檔
|
|
cy.contains('h2', 'DISCOVER'); // 斷言在 Discover 頁
|
|
cy.url().should('include', 'discover/logs'); // 斷言在 discover/logs/:id 路徑
|
|
cy.wait(3000)
|
|
|
|
// select radio
|
|
cy.get('#iconFilter').click(); // 選取 Filter sidebar
|
|
cy.get('input#Sequence0').should('be.checked'); // 選取 Radio 'Sequence'
|
|
cy.contains('label', 'Have activity(s)') // 選取 Radio 'Have activity(s)'
|
|
.prev(2)
|
|
.find('input')
|
|
.should('have.attr', 'type', 'radio') // select the previous element
|
|
.should('be.checked'); // confirm it's type radio (optional)
|
|
|
|
// select table item
|
|
cy.get('.allCheckboxAct') // 選取 all select
|
|
.find('input')
|
|
.should('not.be.visible').check({ force: true}).should('be.checked'); // 打開隱藏項目並選取
|
|
|
|
});
|
|
});
|
|
// cy.visit('https://REDACTED-HOST/files');
|
|
// cy.get('.min-w-\[216px\]:nth-child(1) > div > .text-neutral-500').click();
|
|
// cy.get('.text-primary').click();
|
|
// cy.get('.p-focus').click();
|
|
// cy.get('.float-right > .btn:nth-child(2)').click();
|
|
// cy.get('.text-neutral-900').click();
|
|
// cy.get('.float-right > .btn:nth-child(2)').click();
|
|
// cy.get('.leading-loose').click();
|
|
// cy.get('.swal2-container').click();
|
|
// cy.get('.leading-loose').click();
|
|
// cy.get('.swal2-cancel').click();
|
|
// cy.get('.min-w-\[216px\]:nth-child(1) > div').click();
|
|
// cy.get('.text-primary').click();
|
|
// cy.get('.text-neutral-900').click();
|
|
// cy.get('.text-neutral-900').click();
|
|
// cy.get('.p-focus').click();
|
|
// cy.get('.float-right > .btn:nth-child(2)').click();
|
|
// cy.get('.text-neutral-900').click();
|
|
// cy.get('.float-right > .btn:nth-child(2)').click();
|
|
// cy.get('.leading-loose').click();
|
|
// cy.get('.swal2-confirm').click();
|
|
// cy.get('.swal2-input').type('aaa');
|
|
// cy.get('.swal2-confirm').click();
|
|
// cy.get('.swal2-container').click();
|
|
|
|
// 進入 fils 頁
|
|
// 點擊 log / 點擊 filter
|
|
// 斷言: 編寫程式碼時,我們總是會做出一些假設,斷言就是用於在程式碼中捕捉這些假設。使用時機在該表達式值為真時使用。
|
|
// 沒有操作
|
|
// 有操作沒存檔
|
|
// 有操作有存檔
|
|
// 有操作重複存檔
|
|
// 有重複操作 沒有存檔
|
|
// Funnle 規則檢查
|
|
|
|
// dbclick() 雙擊
|
|
// 多選 單選
|
|
// npx cypress run --spec "cypress/e2e/saveLogAndFilter.cy.js"
|
|
// 分 無頭模式/瀏覽器介面模式,無頭模式更快,因為不用渲染瀏覽器介面
|
|
// 上傳文件
|
|
// $npm install --save cypress-file-upload
|