python+selenium實現網頁測試自動化
很久沒有寫新文章了,去年入職了新公司,每天都忙的很,新鮮的人,新鮮的事物,新鮮的技術,終於有了一種成為程式猿的感覺了。
今天貼一點程式碼出來,順便種草一個自動化網頁測試框架selenium,真的非常不錯,學習成本不高,但是一旦瞭解,你會發現他真的可以做很多的東西。比如批量下載某個網站的歌曲之類的,你們就自行研究吧。
下面的程式碼省略的部分內容,寫的也不是特別的好,隨便看看就行。
#coding=utf-8 import datetime import time import selenium import sys from selenium import webdriver # 選擇元素使用 from selenium.webdriver.common.by import By # 滑鼠操作 from selenium.webdriver.common.action_chains import ActionChains # 鍵盤操作 from selenium.webdriver.common.keys import Keys # 引入元素等待 from selenium.webdriver.support.ui import WebDriverWait # from selenium.webdriver.support import expected_conditions as EC def getNow(): dateStr = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') #現在 return str(dateStr) selfChromeOptions = webdriver.ChromeOptions(); selfChromeOptions.add_argument('disable-infobars'); selfChromeOptions.add_argument("--start-maximized"); selfChromeOptions.add_argument('--kiosk'); driver = webdriver.Chrome(chrome_options=selfChromeOptions); #try: if True: driver.get(true_url); print("go into page ok"); if not test_prop: driver.find_element_by_id('username').send_keys(""); driver.find_element_by_id('password').send_keys(''); driver.find_element_by_class_name("formsubmit_btn").click(); print("login ok"); time.sleep(3); skip_task = False target = -1 while True: target = target + 1 driver.refresh() time.sleep(3) if target > 7: break ul = driver.find_element_by_xpath('//*[@id="workTree"]/ul'); li_list = ul.find_elements_by_tag_name('li'); for li in li_list: if str(li.text).find('mlprice') == -1: continue; print(getNow(),'左側根樹',li.text) if str(li.text).find('_' + str(target)) == -1: continue; time.sleep(1) li.find_elements_by_tag_name('ins')[0].click() time.sleep(1) if True: workUl = li.find_elements_by_tag_name('ul') time.sleep(1) workLi_list = workUl[0].find_elements_by_tag_name('li'); for workLi in workLi_list: if str(workLi.text).find('snk_') == -1: continue; print(getNow(),'左側葉子',workLi.text,'根樹標識',target) if skip_task and target == 4 and str(workLi.text).find('snk_price') == -1: continue else: skip_task = False workLi.find_elements_by_tag_name('a')[0].click(); running_task_div = driver.find_element_by_id('showRunning'); time.sleep(1) per_running_task_div_list = running_task_div.find_elements_by_tag_name('div') # 實現補償,保證開關的狀態 supplement = 1 while supplement > 0: if supplement != 1: print(getNow(),'補償任務',supplement) supplement = supplement - 1 tmp_supplement = supplement for per_running_task_div in per_running_task_div_list: if str(per_running_task_div.text).find('snkWk') == -1: continue; if str(per_running_task_div.get_attribute('class')) == 'message-list': continue; per_worker_switch = per_running_task_div.find_elements_by_tag_name('input')[0] per_worker_switch_status = str(per_worker_switch.get_attribute('oldval')) if per_worker_switch_status == 'false': per_running_task_div_span = per_running_task_div.find_element_by_class_name('summary') print('右側單個任務',per_running_task_div_span.text) print('右側開關狀態',per_worker_switch_status); per_worker_switch.click(); supplement = supplement + 1 time.sleep(1) if tmp_supplement == supplement: supplement = supplement - 2 time.sleep(2) time.sleep(5); driver.quit();
相關推薦
python+selenium實現網頁測試自動化
很久沒有寫新文章了,去年入職了新公司,每天都忙的很,新鮮的人,新鮮的事物,新鮮的技術,終於有了一種成為程式猿的感覺了。 今天貼一點程式碼出來,順便種草一個自動化網頁測試框架selenium,真的非常不錯,學習成本不高,但是一旦瞭解,你會發現他真的可以做很多的東西。比
Python+Selenium前端頁面測試自動化
(selenium學習日誌一) 【找元素】 學習selenium,個人的感覺是主要任務在【找元素】。而對於查詢頁面元素,有以下幾個方法: find_element(self, by=By.ID, value=None) #需要 impor
一隻自動化測試小白的學習記錄——Python+Selenium中網頁視窗切換
本次實驗在Python IDLE中進行操作 可以比較直觀地看到網頁切換的狀態(●ˇ∀ˇ●)1.首先,在百度中搜索“鏈家" ,並以find_element_by_link_text的方法開啟“鏈家”的官方網站首頁(OK,那麼現在已經有兩個網站頁面了,第一個是百度搜索的結果頁面
在Linux下實現Python+selenium+chrome的web自動化測試
宣告:ubuntu版本是在16.04下進行的 1、首先需要先安裝Chrome sudo apt-get install libxss1 libappindicator1 libindicator7 wget https://dl.google.com/linux/direc
Python中使用 Selenium 實現網頁截圖實例
firefox bre ins screens n) odi body 加載 ive Selenium 是一個可以讓瀏覽器自動化地執行一系列任務的工具,常用於自動化測試。不過,也可以用來給網頁截圖。目前,它支持 Java、C#、Ruby 以及 Python 四種客戶端語言。
Python+Selenium個人網頁自動化點贊
對於一個網頁,我們不能連續點贊,測試發現是網頁通過cookie實現的點贊限制。當進入網頁時該網頁會在本地PC存放一個cookie值,當點選點贊按鈕時會向伺服器返回本地cookie存放的值,如果返回到伺服
DJANGO+PYTHON+SELENIUM實現版本釋出後,呼叫自動化指令碼來驗證釋出釋出環境
背景:公司在釋出版本的時候,需要維護幾百臺伺服器,往每個伺服器上面部署相同的應用。釋出完成後,需要測試對每個環境進行相同的環境,目前的測試驗證是手工進行的。最近公司要實現這麼個功能,讓我自動化處理環境驗證,並且要保證效率(就是併發咯),執行完成後把結果傳送給相關人員。釋出版
一個基於python+selenium的page-object自動化測試框架
先上框架git連結:https://gitee.com/yukarijiang/watcher#0-qzone-1-79223-d020d2d2a4e8d1a374a433f596ad1440這個框架目前才剛剛起步,還有很多不完善和不適當的地方,但可以用於學習selenium
一次完整的自動化登入測試-基於python+selenium進行cnblog的自動化登入測試
Web登入測試是很常見的測試!手動測試大家再熟悉不過了,那如何進行自動化登入測試呢!本文作者就用python+selenium結合unittest單元測試框架來進行一次簡單但比較完整的cnblog自動化登入測試,給大家提供點參考!下面就包括測試程式碼和每種測試情況的截圖:
Python中使用 Selenium 實現網頁截圖例項
Selenium 是一個可以讓瀏覽器自動化地執行一系列任務的工具,常用於自動化測試。不過,也可以用來給網頁截圖。目前,它支援 Java、C#、Ruby 以及 Python 四種客戶端語言。如果你使用 Python,則只需要在命令列裡輸入“sudo easy_install selenium”並回車,即可安
python+selenium個人開發的自動化測試框架
1、為什麼開發這個框架呢? 首先,自從做測試行業以來,沒有屬於自己的東西,功能測試這塊可以說沒有什麼技術性的積累,都是經驗;效能測試方面,用過jmeter、loadrunner,積累的經驗比較淺薄;自動化測試接觸過java+selenium; 在網上或者測試行業現
python3+selenium+unitest+HtmlTestRunner實現網頁功能自動化流程
1.selenium+HtmlTestRunner模組安裝匯入2.對應版本 谷歌瀏覽器和谷歌驅動chromedriver.exe的下載(不適用對應版本會報錯,無法呼叫瀏覽器)3.程式碼執行成功後,生成Html功能自動化測試報告import os import sys
一隻自動化測試小白的學習記錄——Python+Selenium基於Web的自動化測試(例項練習)
也有兩天沒更新了 哎~這學期的課還挺多的 都是利用課餘的一些時間來學習自動化測試(抱怨臉(╯▔皿▔)╯)這兩天我在練習的是一個相對完整的Web自動化測試,也是對前些日子學習內容的整合,具體來說如下:1.開啟瀏覽器2.輸入網址開啟網頁(我是以鏈家網為練習的,因為想到明年畢業後要
python+selenium實現登錄賬戶
n) handles href -s cep 2.0 port parent dex selenium 是一套完整的web應用程序測試系統,包含了測試的錄制(selenium IDE),編寫及運行(Selenium Remote Control)和測試的並行處理(Selen
[python]pytest實現WEB UI自動化
測試報告 組合 cti 實現思路 www text 增加 .com 工程 前言:其實這篇寫的是pytest的測試框架運用,實現自動化和https://www.cnblogs.com/Jack-cx/p/9357658.html 原理一致 1.為啥不用unittest P
python selenium中如何測試360等基於chrome內核的瀏覽器
desire 2個 des pat 直接 self 方法 .com spl 轉自:https://blog.csdn.net/five3/article/details/50013159 直接上代碼,註意是基於chrome內核的瀏覽器,基於ie的請替換其中的chro
Jenkins+ant+jmeter實現效能測試自動化
jmeter 過段時間寫 jenkins搭建簡單寫了一篇 簡單介紹下ant: Apache Ant 是由 Java 語言開發的,是一個將軟體編譯,測試,部署等步驟聯絡在一起的自動化的工具。 下載並安裝Ant: 下載地址:https://ant.apache.org/bindown
python+selenium實現動態爬取及selenuim的常用操作
應用例項可以參考部落格中的12306自動搶票應用 https://www.cnblogs.com/mumengyun/p/10001109.html 動態網頁資料抓取 什麼是AJAX: AJAX(Asynchronouse JavaScript And XML)非同步JavaScript和XM
python + requests實現的介面自動化框架
1、首先,我們先來理一下思路。 正常的介面測試流程是什麼? 腦海裡的反應是不是這樣的: 確定測試介面的工具 —> 配置需要的介面引數 —> 進行測試 —> 檢查測試結果(有的需要資料庫輔助) —> 生成測試報告(html報告) 那麼,我們就
python+selenium+BSTestRunner生成測試報告
python版本是3.6 一、BSTestRunner.py檔案 """ A TestRunner for use with the Python unit testing framework. It generates a HTML report to show the res