技術分享 | SeleniumIDE用例錄制

1、錄制回放方式的穩(wěn)定性和可靠性有限
2、只支持 Firefox、Chrome
3、對于復雜的頁面邏輯其處理能力有限
環(huán)境準備
Chrome 插件:https://chrome.google.com/webstore/detail/selenium-ide/mooikfkahbdckldjjndioackbalphokd
Firefox 插件:Selenium IDE – Get this Extension for ?? Firefox (en-US)
安裝完成后,通過在瀏覽器的菜單欄中點擊圖標啟動

實戰(zhàn)演示
第一步:創(chuàng)建新項目后,取名為 hogwarts_demo1。
第二步:然后需要填寫 URL(要錄制測試腳本的網(wǎng)站 URL)。這里使用的是?https://ceshiren.com/。
第三步:完成設置后,將打開一個新的瀏覽器窗口,加載 URL 并開始錄制腳本。在頁面上的操作都將記錄在 IDE 中。操作完成后,切換到 IDE 窗口并單擊停止錄制按鈕。

第四步:停止后,為剛錄制的測試用例取名ceshiren_demo1
利用 Selenium IDE 導出 pytest 格式代碼。
導出用例代碼如下:
#注釋是由 Selenium IDE 生成的代碼
# Generated by Selenium IDE
#導入可能用到的依賴
from selenium import webdriver
from selenium.webdriver.common.by import By
class TestCeshirendemo1():
? # setup_module()只會在開始測試運行一次
? def setup_method(self, method):
? ? # 初始化webdriver
? ? self.driver = webdriver.Firefox()
? ? self.vars = {}
? # teardown_module()只會在結(jié)束測試運行一次
? def teardown_method(self, method):
? ? # 關閉瀏覽器并關閉啟動 ChromeDriver 時啟動的 ChromeDriver 可執(zhí)行文件
? ? self.driver.quit()
? # 測試方法
? def test_ceshirendemo1(self):
? ? # 訪問網(wǎng)址
? ? self.driver.get("https://ceshiren.com/")
? ? # 設置窗口大小
? ? self.driver.set_window_size(1382, 744)
? ? # 點擊操作
? ? self.driver.find_element(By.LINK_TEXT, "所有分類").click()
? ? # 設置等待時間為2秒
? ? time.sleep(2)
? ? # 關閉當前窗口
? ? self.driver.close()
這段代碼就簡單的實現(xiàn)了對瀏覽器操作的自動化。
保存
單擊 IDE 右上角的 save 圖標,輸入項目的保存名稱和地址。
回放
選擇想要回放的測試用例,單擊 play 按鈕,在 IDE 中回放測試。

控件定位

如果想定位其他的控件,只需要點擊圖中的箭頭,點擊后就會跳轉(zhuǎn)到瀏覽器,然后點擊想要定位的控件,Target 的值就會出現(xiàn)相應的定位表達式。