日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

selenium之HTMLTestRunner练习

發布時間:2023/12/9 HTML 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 selenium之HTMLTestRunner练习 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近工作不忙,開始學習python&selenium,有很多理解模糊的地方,做下記錄,希望大神可以指導。

練習1:

小插曲1:執行代碼以后,發現baidu.html空的,執行多次發現原因,必須關閉python執行窗口;

小疑問1:目前不太清楚方法close_alert_and_get_its_text,switch_to_alert;

錯誤1:執行多次偶爾會報錯,還在琢磨:

error1: ft1.3: Traceback (most recent call last):File "C:\learn_python\á·?°\baidu.py", line 44, in test_baidu_logindriver.find_element_by_css_selector("#u1 > a[name=\"tj_login\"]").click()File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 376, in find_element_by_css_selectorreturn self.find_element(by=By.CSS_SELECTOR, value=css_selector)File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 664, in find_element{'using': by, 'value': value})['value']File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 175, in executeself.error_handler.check_response(response)File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 166, in check_responseraise exception_class(message, screen, stacktrace) NoSuchElementException: Message: Unable to find element with css selector == #u1 > a[name="tj_login"]error2: ft1.1: Traceback (most recent call last):File "C:\learn_python\á·?°\baidu.py", line 21, in test_baidu_setdriver.find_element_by_css_selector("#u1 > a[name=\"tj_settingicon\"]").click()File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 376, in find_element_by_css_selectorreturn self.find_element(by=By.CSS_SELECTOR, value=css_selector)File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 664, in find_element{'using': by, 'value': value})['value']File "C:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 175, in executeself.error_handler.check_response(response)File "C:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 166, in check_responseraise exception_class(message, screen, stacktrace) NoSuchElementException: Message: Unable to find element with css selector == #u1 > a[name="tj_settingicon"]

  

# -*- coding: utf-8 -*- from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import Select from selenium.common.exceptions import NoSuchElementException import unittest, time, re import HTMLTestRunner class Baidu(unittest.TestCase): def setUp(self): self.driver = webdriver.Ie() self.driver.implicitly_wait(30) self.base_url = "http://www.baidu.com" self.verificationErrors = [] self.accept_next_alert = True def test_baidu_set(self): u'測試百度設置' driver = self.driver driver.get(self.base_url + "/") driver.find_element_by_css_selector("#u1 > a[name=\"tj_settingicon\"]").click() time.sleep(2) driver.find_element_by_link_text("搜索設置").click() time.sleep(2) driver.find_element_by_link_text("保存設置").click() #self.assertEqual(u"已經記錄下您的使用偏好", self.close_alert_and_get_its_text()) #driver.switch_to_alert().accept() def test_baidu_search(self): u'測試百度搜索' driver = self.driver driver.get(self.base_url + "/") driver.find_element_by_id("kw").clear() driver.find_element_by_id("kw").send_keys("selenium") driver.find_element_by_id("su").click() time.sleep(2) driver.close() #測試登陸 def test_baidu_login(self): u'測試登陸' driver = self.driver driver.get(self.base_url + "/") driver.find_element_by_css_selector("#u1 > a[name=\"tj_login\"]").click() driver.find_element_by_id("TANGRAM__PSP_8__userName").click() driver.find_element_by_id("TANGRAM__PSP_8__userName").clear() driver.find_element_by_id("TANGRAM__PSP_8__userName").send_keys("用戶名") driver.find_element_by_id("TANGRAM__PSP_8__password").click() driver.find_element_by_id("TANGRAM__PSP_8__password").clear() driver.find_element_by_id("TANGRAM__PSP_8__password").send_keys("密碼") driver.find_element_by_id("TANGRAM__PSP_8__submit").click() time.sleep(5) driver.find_element_by_link_text("退出").click() driver.find_element_by_link_text("確定").click() def is_element_present(self, how, what): try: self.driver.find_element(by=how, value=what) except NoSuchElementException, e: return False return True def is_alert_present(self): try: self.driver.switch_to_alert() except NoAlertPresentException, e: return False return True def close_alert_and_get_its_text(self): try: alert = self.driver.switch_to_alert() alert_text = alert.text if self.accept_next_alert: alert.accept() else: alert.dismiss() return alert_text finally: self.accept_next_alert = True def tearDown(self): self.driver.quit() self.assertEqual([], self.verificationErrors) if __name__ == "__main__": #定義一個單元測試容器 testunit=unittest.TestSuite() #添加測試用例:百度設置 testunit.addTest(Baidu("test_baidu_set")) #添加測試用例:百度搜索 testunit.addTest(Baidu("test_baidu_search")) #添加測試用例:百度登陸 testunit.addTest(Baidu("test_baidu_login")) #輸出報告路徑 filename=u'C:\\learn_python\\練習\\baidu.html' #打開報告,輸入數據 fp=file(filename,'wb') #定義測試報告 runner = HTMLTestRunner.HTMLTestRunner( stream=fp, title=u'百度測試報告', description=u'用例執行情況:', ) runner.run(testunit)

轉載于:https://www.cnblogs.com/qq916653496/articles/4311588.html

總結

以上是生活随笔為你收集整理的selenium之HTMLTestRunner练习的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。