python web自动化测试实验报告_Python:web自动化测试
用selenium包。
# -*- coding: utf-8 -*-
# 說明: 當(dāng)前的瀏覽器驅(qū)動(dòng)用的是edge瀏覽器.
# 需要下載瀏覽器驅(qū)動(dòng),并把它的路徑添加到環(huán)境變量
from selenium import webdriver
import time
driver = webdriver.Edge()
homepage_url = 'http://10.180.10.93:8000/'
driver.get(homepage_url)
driver.quit()
打開xx頁面
nodes = driver.find_elements_by_tag_name('a')
driver.maximize_window()
driver.implicitly_wait(6)? ?# zhe'shi'shen'm
和dom找元素很像
nodes = node[0],然后node.click()模擬鼠標(biāo)點(diǎn)擊。
前進(jìn)、后退
driver.forward()
driver.back()
if node.get_attribute('target') == '_blank': # 如果是 _target = blank 的話,打開新的選項(xiàng)卡(標(biāo)簽),隨后關(guān)閉它
node.click()
time.sleep(SLEEPING_SECOND)
assert driver.title == EXPECTED_TITLE
windows = driver.window_handles
driver.switch_to.window(windows[1])
driver.close()
driver.switch_to.window(windows[0])
測試把網(wǎng)頁上所有的鏈接都點(diǎn)一變。
# -*- coding: utf-8 -*-
# 說明: 當(dāng)前的瀏覽器驅(qū)動(dòng)用的是edge瀏覽器.
# 需要下載瀏覽器驅(qū)動(dòng),并把它的路徑添加到環(huán)境變量
from __future__ import print_function
from selenium import webdriver
import time
driver = webdriver.Edge()
homepage_url = 'http://10.180.10.93:8000/'
SLEEPING_SECOND = 1
driver.get(homepage_url)
time.sleep(SLEEPING_SECOND)
url_visited = set()
# 不需要訪問的頁面
url_filtered = {
'https://www.djangoproject.com/',
'https://purecss.io/',
'https://www.pgadmin.org/',
'http://quantlib.org/index.shtml',
'https://www.pgadmin.org/docs/',
'http://quantlib.org/quantlibaddin/extend_tutorial.html#extend_autogenerate',
'http://quantlib.org/quantlibxl/faq.html#faq_item_debugexcel',
'https://pypi.python.org/pypi',
'https://www.anaconda.com/download/#windows',
'http://quantlib.org/install/vc10.shtml',
'http://quantlib.org/quantlibxl/',
'http://sourceforge.net/projects/boost/files/boost-binaries/',
'https://www.postgresql.org/',
'http://www.cnblogs.com/newpanderking/articles/3372969.html',
'http://www.pgadmin.org/',
'http://quantlib.org/quantlibaddin/build_qlxl.html',
'https://sourceforge.net/p/quantlib/mailman/quantlib-dev/?style=flat&viewmonth=201101',
'http://quantlib.10058.n7.nabble.com/problems-compiling-QuantLibXL-from-td15602.html'
}
EXPECTED_TITLE = 'Homepage of Quant Team One'
def traverse():
print(url_visited)
nodes = driver.find_elements_by_tag_name('a')
if len(nodes) == 0:
return
else:
for i in range(len(nodes)):
print('當(dāng)前:%s' % driver.current_url)
if 'ErrorStatus=0x800C0005' in driver.current_url:
raise ValueError('站點(diǎn)無法訪問')
assert driver.title == EXPECTED_TITLE
nodes = driver.find_elements_by_tag_name('a') # 每次都要重新獲取啊 -_-!! 不然要報(bào)錯(cuò): 此節(jié)點(diǎn)已過時(shí)
node = nodes[i]
url = node.get_attribute("href")
if node.text in ['\n \n \n ']: # 這個(gè)超鏈接是在哪里出現(xiàn)的 -_-!! 好詭異 -_-!
continue
if url in (url_visited | url_filtered): # 不需要訪問的頁面 (已經(jīng)訪問過的 & 確實(shí)不需要訪問的)
continue
print('%s, %s' % (node.text, url))
try:
if node.get_attribute('target') == '_blank': # 如果是 _target = blank 的話,打開新的選項(xiàng)卡(標(biāo)簽),隨后關(guān)閉它
node.click()
time.sleep(SLEEPING_SECOND)
assert driver.title == EXPECTED_TITLE
url_visited.add(url)
windows = driver.window_handles
driver.switch_to.window(windows[1])
driver.close()
driver.switch_to.window(windows[0])
else:
node.click()
time.sleep(SLEEPING_SECOND)
assert driver.title == EXPECTED_TITLE
url_visited.add(url)
traverse()
driver.back()
except Exception as e:
print(e)
pass
url_visited.add(driver.current_url)
traverse()
driver.quit()
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python web自动化测试实验报告_Python:web自动化测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络知识:宽带下载网速是30MB/s,经
- 下一篇: 电脑知识:Win10系统把系统盘的软件移