python3.6+selenium_Testsuits測試套件

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/11/23 11:23
# @File : unittest_test2_2.py'''Testsuits測試套件'''
import unittest
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.by import By#from __builtin__ import classmethodclass HomePageTest(unittest.TestCase):@classmethoddef setUpClass(cls):cls.driver = webdriver.Chrome()cls.driver.implicitly_wait(30)cls.driver.maximize_window()cls.driver.get('https://www.baidu.com/?tn=78000241_12_hao_pg')def test_search_field(self):self.assertTrue(self.is_element_present(By.NAME,'wd'))def test_vip_promo(self):vip_promo = self.driver.find_element_by_xpath('//*[@id="u1"]/a[1]')self.assertTrue(vip_promo.is_displayed())vip_promo.click()self.assertEqual(u'百度新聞——全球最大的中文新聞平臺',self.driver.title) #如果點擊的鏈接跳轉出來的頁面# 不是在當前頁面的話會報錯,因為self.driver表示的是當前頁面def test_login(self):login = self.driver.find_element_by_css_selector('#u1 > a.lb')login.click()login.next = self.driver.find_element_by_css_selector('#TANGRAM__PSP_10__qrcode > p.tang-pass-qrcode-title')self.assertEqual(u'請使用百度App掃碼登錄',login.next.text)login.close = self.driver.find_element_by_css_selector('#TANGRAM__PSP_4__closeBtn')login.close.click()@classmethoddef tearDownClass(cls):cls.driver.quit()def is_element_present(self,how,what):try:self.driver.find_element(by=how,value=what)except NoSuchElementException:return Falsereturn Trueif __name__=='__main__':unittest.main(verbosity=2)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/11/28 10:42
# @File : unittest_test2_4.py'''
用TestSuite類來定義和執行測試套件,用TestLoader和TextTestRunner來創建和運行測試套件
把多個測試加到一個測試套件中
'''
import unittest
from unittest_test2_1 import SearchTests
from unittest_test2_2 import HomePageTestsearch_tests = unittest.TestLoader().loadTestsFromTestCase(SearchTests)
home_page_tests = unittest.TestLoader().loadTestsFromTestCase(HomePageTest)#創建一個套件聯合search_tests,home_page_tests
smoke_tests = unittest.TestSuite([search_tests,home_page_tests])#運行套件
unittest.TextTestRunner(verbosity=2).run(smoke_tests)

?

?

使用@classmethod和setUpClass()方法,tearDownClass()方法可以在類級別初始化數據,多個測試用例可以共享這些初始化數據,創建一個chrome實例

轉載于:https://www.cnblogs.com/xiuxiu123456/p/10384189.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/449920.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/449920.shtml
英文地址,請注明出處:http://en.pswp.cn/news/449920.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

PBRT筆記(7)——反射模型

基礎術語 表面反射可以分為4大類: diffuse 漫反射glossy specular 鏡面反射高光perfect specular 完美反射高光retro-reflective distributions 后反射分布幾何坐標系以及工具函數 pbrt中的反射是在反射坐標系中進行計算的。坐標系由著色點處法向量與兩個切向量組成…

Linux grep命令、Linux cd命令、Linux pwd命令

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 Linux grep命令用于查找文件里符合條件的字符串。 grep指令用于查找內容包含指定的范本樣式的文件,如果發現某文件的內容符…

忠告:創業公司與大公司正面競爭易死

移動互聯網的興起給了創業公司足夠的發展空間,也提供了一個相對公平的競爭平臺。但機遇永遠與挑戰并存。   對于初創公司,最大的挑戰莫過于在移動互聯網大潮中生存下來。IDG資本合伙人高翔認為,初創公司不要和大公司正面競爭,應…

海康螢石攝像機遠程監控機制分析

背景介紹 有一個遠程監控的需求,正常情況下采用服務器轉發視頻流對服務器要求很高,所以p2p看似是一個比較好的方案,但是p2p打洞卻不是一件容易的事情,所以打算分析下海康螢石攝像機遠程監控的機制,是否采用了p2p的方式…

實體類中存在List集合,怎么在xml文件中,對應

public class AppointmentDTO {/**訂單id**/private String appointmentId;/**訂單里面的商品list**/private List<CommodityShowInAppoinment> list;/**訂單里面的商品數量**/private Integer count;/**訂單實際付款的金額**/private Float totalMoney; } 怎么弄呢&…

git管理復雜項目代碼

背景 我初學前端的時候接觸git&#xff0c;那時候只要會add/commit什么的就好了&#xff0c;網上的教程大多都停留在從頭到尾一個個介紹git的命令&#xff0c;關于各種用法&#xff0c;特別是多個分支來回交叉沖突的實際處理&#xff0c;很少有這方面的介紹&#xff0c;經過很多…

實現一個通用的生產者消費者隊列(c語言版本)

背景&#xff1a;筆者之前一直從事嵌入式音視頻相關的開發工作&#xff0c;對于音視頻的數據的處理&#xff0c;生產者消費者隊列必不可少&#xff0c;而如何實現一個高效穩定的生產者消費者隊列則十分重要&#xff0c;不過按照筆者從業的經驗&#xff0c;所看到的現象&#xf…

美媒:小米新浪達成合作 采取行動對抗騰訊

來自美媒的報道稱&#xff0c;兩家中國最具發展潛力的科技公司&#xff0c;新浪和小米將會共同合作&#xff0c;結合各自的通信應用程序來共同對抗移動通信的挑戰&#xff0c;尤其是擁有2億用戶的強勁對手微信。 來自中國的消息稱&#xff0c;這次新浪與小米的合作將會涉及到新…

Linux expr命令、Linux wc命令、Linux let 命令

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 expr命令是一個手工命令行計數器&#xff0c;用于在UNIX/LINUX下求表達式變量的值&#xff0c;一般用于整數值&#xff0c;也可用于字符…

【English】六、am,is,are 分別用在什么地方

is&#xff1a;第三人稱單數am&#xff1a;第一人稱單數are&#xff1a;第二人稱單數&#xff0c;第一、二、三人稱的復數 用于第一人稱, I am ......(我是.......)用于第三人稱, He is ......(他是......) 或She is ......(她是......), It is ......(它是.......)用于第二人…

誤刪了公司數據庫,但我還是活下來了

專欄 | 九章算法 網址 | www.jiuzhang.com 上周我與同事們進行了一次關于職業生涯中搞砸了一些事情的簡短談話。這確實會淪為他人笑柄&#xff0c;卻更給我們帶來了珍貴的教訓。重要的是&#xff0c;我們應該分享那些曾經的錯誤&#xff0c;這樣其他人就可以從其中學習。下文是…

改良程序的11技巧

有很多理由都能說明為什么我們應該寫出清晰、可讀性好的程序。最重要的一點&#xff0c;程序你只寫一次&#xff0c;但以后會無數次的閱讀。當你第二天回頭來看你的代碼時&#xff0c;你就要開始閱讀它了。當你把代碼拿給其他人看時&#xff0c;他必須閱讀你的代碼。因此&#…

歷時四年,給Google提交的Android Framework Bug終于被Fixed了

歷時四年&#xff0c;Google終于修復了一個我發現的Android Framework Bug 2014年在做一個Android終端設備開發過程中&#xff0c;發現了一個Android Framework層的Bug&#xff0c;給Google提交了issue和解決方案&#xff0c;和外界傳言一致Google一般不太在意個人開發者提交的…

Linux ping命令、Linux kill命令、Linux logname命令、 Linux logout命令

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Linux ping命令用于檢測主機。 執行ping指令會使用ICMP傳輸協議&#xff0c;發出要求回應的信息&#xff0c;若遠端主機的網絡功能沒有…

前端布局神器display:flex

2009年&#xff0c;W3C提出了一種新的方案--Flex布局&#xff0c;可以簡便、完整、響應式地實現各種頁面布局。目前已得到所有現在瀏覽器的支持。 flex瀏覽器支持一、Flex布局是什么&#xff1f; Flex是Flexible Box的縮寫&#xff0c;翻譯成中文就是“彈性盒子”&#xff0c;用…

bind簡單轉發實驗

2019獨角獸企業重金招聘Python工程師標準>>> *主配置文件內容// [rootlocalhost /]# cat /etc/named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a local…

數據結構:塊狀鏈表

一、概述 有時候我們需要設計這樣一種數據結構&#xff1a;它能快速在要求位置插入或者刪除一段數據。先考慮兩種簡單的數據結構&#xff1a;數組和鏈表。數組的優點是能夠在O(1)的時間內找到所要執行操作的位置&#xff0c;但其缺點是無論是插入或刪除都要移動之后的所有數據&…

記賬本開發小計(四)

今天處理的是記賬本小軟件中的查詢功能&#xff0c;由于賬目的要求就是準確性&#xff0c;所以對于記賬本程序來說&#xff0c;模糊查詢并不適用&#xff0c;所以在這里只能是按照指定的條件來進行查詢所以我做的事按照時間進行查詢&#xff0c;為了方便進行處理&#xff0c;這…

Linux ps命令、Linux top命令

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Linux ps命令用于顯示當前進程 (process) 的狀態。 語法 ps [options] [--help][options] [--help] 參數&#xff1a; ps 的參數非常…

Prime Distance POJ - 2689 線性篩

一個數 $n$ 必有一個不超過 $\sqrt n$ 的質因子。 打表處理出 $1$ 到 $\sqrt n$ 的質因子后去篩掉屬于 $L$ 到 $R$ 區間的素數即可。 Code: #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> using namespace std; const…