- Cypress 教程
- Cypress - 首頁
- Cypress - 簡介
- Cypress - 架構和環境搭建
- Cypress - 測試執行器
- Cypress - 建立第一個測試
- Cypress - 支援的瀏覽器
- Cypress - 基本命令
- Cypress - 變數
- Cypress - 別名
- Cypress - 定位器
- Cypress - 斷言
- Cypress - 文字驗證
- Cypress - 非同步行為
- Cypress - 使用 XHR
- Cypress - jQuery
- Cypress - 複選框
- Cypress - 標籤頁
- Cypress - 下拉選單
- Cypress - 警報框
- Cypress - 子視窗
- Cypress - 隱藏元素
- Cypress - 框架
- Cypress - 網頁表格
- Cypress - 滑鼠操作
- Cypress - Cookie
- Cypress - GET 和 POST 請求
- Cypress - 檔案上傳
- Cypress - 資料驅動測試
- Cypress - 提示彈出視窗
- Cypress - 儀表盤
- Cypress - 截圖和影片
- Cypress - 除錯
- Cypress - 自定義命令
- Cypress - Fixtures (夾具)
- Cypress - 環境變數
- Cypress - Hooks (鉤子)
- Cypress - JSON 檔案配置
- Cypress - 報告
- Cypress - 外掛
- Cypress - GitHub
- Cypress 有用資源
- Cypress - 快速指南
- Cypress - 有用資源
- Cypress - 討論
Cypress - 框架
早期版本的 Cypress 無法訪問框架內的元素。但是,最新版本已經解決了這個問題。
要使用框架,首先,我們必須使用以下命令安裝 Cypress 外掛:
npm install –D cypress-iframe
將顯示以下螢幕:
對於 Cypress 中的框架實現,我們必須在程式碼中新增語句 `import 'cypressiframe'`。名為 frame/iframe 的標籤用於在 html 程式碼中表示框架。
您的計算機上將顯示以下螢幕:
Cypress 命令 `frameload` 用於將焦點從主頁面移動到框架。焦點切換後,我們可以與框架內的元素進行互動。
這可以透過 `cy.iframe` 方法實現。
實現
以下是使用 `cy.iframe` 方法實現 Cypress 框架命令的示例:
import 'cypress-iframe'
describe('Tutorialspoint Test', function () {
// test case
it('Test Case6', function (){
// launch URL
cy.visit("https://jqueryui.com/draggable/");
// frame loading
cy.frameLoaded('.demo-frame');
//shifting focus
cy.iframe().find("#draggable").then(function(t){
const frmtxt = t.text()
//assertion to verify text
expect(frmtxt).to.contains('Drag me around');
cy.log(frmtxt);
})
});
});
執行結果
輸出如下:
執行日誌顯示了訪問框架內元素以及在其中獲取的文字。
Cypress 無法處理頁面中超過一個框架。
此外,為了實現 Cypress 的框架 IntelliSense,我們可以向程式碼中新增 `///
廣告