we自动化po模式_Web自动化测试—PO设计模式(一)
前言
很多的測(cè)試同學(xué)懂得使用selenium進(jìn)行Web自動(dòng)化測(cè)試,
但是不知道如何去寫(xiě)一個(gè)測(cè)試框架,或者說(shuō)是一個(gè)容易維護(hù)的web自動(dòng)化項(xiàng)目。
一、寫(xiě)一個(gè)最基本的web自動(dòng)化測(cè)試框架需要會(huì)什么?
1. 語(yǔ)言基礎(chǔ),學(xué)到面向?qū)ο?br />2. 熟練使用selenium API (操作瀏覽器的方法)
3. 會(huì)使用基本的工具庫(kù),os,sys等
4. 一個(gè)測(cè)試框架 例如:unittest
5. page object設(shè)計(jì)模式
6. 熟悉html、css
二、目錄結(jié)構(gòu)
--pages
--__init__.py
--base_page.py代碼:
#coding:utf8
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
#所有頁(yè)面類的基類,實(shí)質(zhì)上是對(duì)selenium進(jìn)行二次封裝
class BasePage(object):
def __init__(self,driver,path=None):
self.driver = driver
# self.driver = webdriver.Chrome()
self.url = 'TAPD-敏捷開(kāi)發(fā) 項(xiàng)目管理 騰訊敏捷產(chǎn)品研發(fā)平臺(tái)'
self.time_out = 10
self.poll_frequency = 0.3
self.open_web_page(path)
self.driver.maximize_window()
def open_web_page(self,path):
if path != None:
url = self.url + path
else:
url = None
if url != None:
self.driver.get(url)
else:
pass
def wait(self,*locator):
WebDriverWait(self.driver,self.time_out,self.poll_frequency).until(EC.visibility_of_element_located(locator))
def wait_text(self,text=None,*locator):
WebDriverWait(self.driver,self.time_out,self.poll_frequency).until(EC.text_to_be_present_in_element((locator),text))
def wait_all(self,text=None,*locator):
if text == None:
self.wait(*locator)
else:
self.wait_text(text,*locator)
def by_css(self,css,text=None):
locator = (By.CSS_SELECTOR,css)
self.wait_all(text,*locator)
return self.driver.find_element(*locator)
if __name__ == '__main__':
driver = webdriver.Chrome()
test_base_page = BasePage(driver,'cloud_logins/login')
test_base_page.by_css('#username').send_keys('XXXXXX')
test_base_page.by_css('#password_input').send_keys('XXXXXX')
test_base_page.by_css('#tcloud_login_button').click()
創(chuàng)建了一個(gè)測(cè)試交流群,如果對(duì)軟件測(cè)試、接口測(cè)試、自動(dòng)化測(cè)試、面試經(jīng)驗(yàn)交流感興趣可以加測(cè)試交流群(文章開(kāi)頭文章),還會(huì)有同行一起技術(shù)交流(歡迎大家進(jìn)群)
?
總結(jié)
以上是生活随笔為你收集整理的we自动化po模式_Web自动化测试—PO设计模式(一)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 对学校的希望和寄语_新年元旦寄语【三篇】
- 下一篇: python 逐行调试工具_在线编译或编