自動化測試登入 python+selenium
Page Object
Page Object是Selenium自動化測試專案開發實踐的最佳設計模式之一,通過對介面元素和功能模組的封裝減少冗餘程式碼,同時在後期維護中,若元素定位或功能模組發生變化,只需要調整頁面元素或功能模組封裝的程式碼,提高測試用例的可維護性。
BasePage.py
from time import sleep
class Page():
'''頁面基礎類'''
#初始化
def __init__(self, dirver):
self.base_url = 'http://www.uerb.net/login.php'
self.driver = dirver
# self.timeout = 10
#開啟不同的子頁面
def _open(self):
url_ = self.base_url
print(self.driver)
# self.driver.maximize_window()
self.driver.get(self.base_url)
# sleep(2)
# print(self.driver.current_url)
assert self.driver.current_url == url_, 'Did ont land on %s' % url_
def open(self):
self._open()
#元素定位方法封裝
def find_element(self,*loc):
return self.driver.find_element(*loc)
LoginPage.py
from BasePage import *
from time import sleep
from selenium.webdriver.common.by import By
class LoginPage(Page):
'''首頁登入頁面'''
#定位器
username_loc=(By.NAME,'username3')
password_loc=(By.NAME,'password3')
login_loc =(By.LINK_TEXT,'使用者登入')
submit_loc =(By.CLASS_NAME,'login-style-update')
search_loc =(By.CLASS_NAME,'s_btn')
keyword_loc =(By.NAME,'wd')
# 點選登入
def type_login(self):
self.find_element(*self.login_loc).click()
# 查詢
def type_keyword(self,keyword):
self.find_element(*self.keyword_loc).clear()
self.find_element(*self.keyword_loc).send_keys(keyword)
# 點選登入
def type_search(self):
self.find_element(*self.search_loc).click()
#使用者名稱輸入框元素
def type_username(self,username):
self.find_element(*self.username_loc).clear()
self.find_element(*self.username_loc).send_keys(username)
#密碼輸入框元素
def type_password(self,password):
self.find_element(*self.password_loc).clear()
self.find_element(*self.password_loc).send_keys(password)
#登入按鈕元素
def type_submit(self):
self.find_element(*self.submit_loc).click()
#登入功能模組封裝
def test_user_login(driver, username, password, keyword):
'''測試使用者名稱密碼是否可以登入'''
login_page = LoginPage(driver)
login_page.open()
# login_page.type_keyword(keyword)
# login_page.type_search()
login_page.type_login()
# login_page.type_zmlogin()
sleep(4)
login_page.type_username(username)
login_page.type_password(password)
sleep(4)
login_page.type_submit()
sleep(10)
loin_test.py
from LoginPage import *
from selenium import webdriver
driver=webdriver.Chrome()
username = '*******'
password = '1'
keyword = '我'
test_user_login(driver, username, password, keyword)
driver.quit()
相關推薦
自動化測試登入 python+selenium
Page Object Page Object是Selenium自動化測試專案開發實踐的最佳設計模式之一,通過對介面元素和功能模組的封裝減少冗餘程式碼,同時在後期維護中,若元素定位或功能模組發生變化,只需要調整頁面元素或功能模組封裝的程式碼,提高測試用例的可維
自動化測試:python+selenium生成組織機構程式碼證
orgList = ['MA1WYPU7-X', 'MA3828DP-X', 'MA72057F-2', 'MA31Y86J-4', 'MA31Y5GQ-7', 'MA45JGJA-9', 'MA0CKGXH-X', 'MA2RXWPR-2', 'MA2RXXF
一次完整的自動化登入測試-基於python+selenium進行cnblog的自動化登入測試
Web登入測試是很常見的測試!手動測試大家再熟悉不過了,那如何進行自動化登入測試呢!本文作者就用python+selenium結合unittest單元測試框架來進行一次簡單但比較完整的cnblog自動化登入測試,給大家提供點參考!下面就包括測試程式碼和每種測試情況的截圖:
學習《selenium2自動化測試基於python》遇到的問題(一)
pypi tools bsp sel dir python 解決方案 打不開 什麽 問題一: 通過cmd,用Python安裝setuptools時,報錯no module named ‘six‘等類似情況時,解決方案: 翻譯過來就是缺少SIX的模塊,直接到官網打開,下載
自動化測試基礎篇--Selenium鼠標鍵盤事件
class font 全選 回車 es2017 eight -type indent 模擬鍵盤 前面幾篇文章我們學習了怎麽定位元素,同時通過實例也展示了怎麽切換到iframe,怎麽輸入用戶名和密碼,怎麽點擊登錄按鈕,首先我們先回顧一下元素的基本操作。 1.點擊(鼠標左鍵)頁
UI自動化測試簡介及Selenium工具的介紹和環境搭建
版本 ebe 需求分析 核心 nis rep color 基於 多語 自動化測試簡介 1.1何為自動化測試? 是把以人為驅動的測試轉化為機器執行的一種過程,它是一種以程序測試程序的過程。換言之,就是以程序實現的方式來代替手工測試。 1.2自動化測試分類 分為功能自動
自動化測試 - Appium + Python史上最全最簡環境搭建步驟
一,為什麼是Appium借一張圖: 1.1 Appium優點 l 開源 l 跨架構:NativeApp、Hybird App、Web App l 跨裝置:Android、iOS、Firefox OS l 不依賴原始碼 l
python自動化測試之python基本介紹、條件判斷\迴圈、
1、python基本介紹 python語言簡單,語法簡潔,易上手。python可以做很多事情,做自動化測試、做運維、做資料分析、做web開發、做人工智慧等等,用途很廣泛。 目前官方發文稱python2的版本到2020年就不再維護,建議大家學習python3. python是一門解釋性語言
【自動化測試】Python 訪問 mysql資料庫
一、準備工作 1、確保Python環境已安裝mysql,py3.*版本:pip install PyMySQL PyMySQL是在Python3.x中用於連線MySQL伺服器的一個庫。 2、已經建立了資料庫testDB,相關表table,以及表字段 3、資料庫連線
自動化測試工具:Selenium 無頭瀏覽器:PhantomJS
Ajax只是一個載入技術 selenium是可以通過pycharm自動匯入模組的 然後把檔案複製到scripts目錄下,在把下載的路徑設定成環境變數就可以使用了 面試的時候直接說自己會自動化測試工具、無頭瀏覽器去爬取動態載入頁面、js分頁技術、ajax記載技
安卓自動化測試入門 Python篇
第1章 課程介紹(需要有Android和python基礎)如果你想學習移動端專項測試與自動化測試的知識,不知道從哪裡開始! 如果你想從事測試工作,面試卻四處碰壁, 不知道錯在哪裡! 如果你一直在做功能性測試,不知道前途在哪裡! 那麼這個課程就是你需要的!第2章 Androi
自動化測試學習 python學習day7
連線MySQL資料庫 python和mysql相連 需要安裝Mysql-python的一個外掛 然後連線 import MySQLdb from datetime import date if __name__ == '__main__': # 連線
App自動化測試Appium+Python最新資料
課程目錄:" D5 I4 h8 P. l第一章:App自動化測試概述, y, D6 G& C1 J ~& y0 Y; }第二章:Android系統基礎3 P7 V: p( t5 o5 ]. P& e第三章:測試工具簡介第四章:Appium基礎8 ~4 `; o7
看看大牛是怎麼用Web介面開發與自動化測試基於Python語言
感覺這篇文章應該是非常實用的。現在給大家分享下。 這裡推薦下我自己建的python群:595266089,不管你是小白還是大牛,小編我都挺歡迎,不定期分享乾貨,包括2017最新的python企業案例學習資料和零基礎入門教程,歡迎初學和進階中的小夥伴。 Ps:我下載了,但是和書中出入比
自動化測試簡介及Selenium的一些基礎操作
第一章:自動化測試簡介 自動化測試是把以人為驅動的測試行為轉化為機器執行的一種過程。通常,在設計了測試用例 並通過評審之後,由測試人員根據測試用例中描述的規程一步步執行測試,得到實際結果與期望結果的比較。 一 分層自動化測試 1:UI介面層(10%)前端 包括:(1)UI自動化測試; (2)
簡單實現介面自動化測試(基於python+unittest)
簡介 本文通過從Postman獲取基本的介面測試Code簡單的介面測試入手,一步步調整優化介面呼叫,以及增加基本的結果判斷,講解Python自帶的Unittest框架呼叫,期望各位可以通過本文對介面自動化測試有一個大致的了解。 引言 為什麼要做介面自動化測試? 在當前網際網路產品迭代頻繁的背景下,迴歸測試的
《Web介面開發與自動化測試基於Python語言》–第3章
《Web介面開發與自動化測試基於Python語言》–讀書筆記 第3章 3.1 來寫個登入功能 修改/guest/sign/templates/index.html: <!DOCTYPE html> <html>
自動化測試(python))——解決appium每次測試指令碼都要安裝unlock和settings兩個apk問題的方法
用自己的手機每次測試指令碼總是會提示安裝appium settings 和 unlock兩個apk檔案,可以說是非常麻煩了,這裡找到一個解決辦法: 找到**appium安裝目錄,在 appiu
《Web介面開發與自動化測試基於Python語言》–第5章
《Web介面開發與自動化測試基於Python語言》–讀書筆記 第5章 Django模板 Ps:我下載了,但是和書中出入比較大,建議還是自己按照書碼字吧。 5.1 Django-bootstrap3 Bootstrap:源於Twi
《Web介面開發與自動化測試基於Python語言》--第7章
《Web介面開發與自動化測試基於Python語言》–讀書筆記 第7章 介面相關概念 7.1 分層的自動化測試 測試金字塔模型: 分層自動化測試模型: 傳統自動化測試: 基於產品UI層的自動化測試,它是將黑盒功能測試轉化為