/
selenium_unittest.py
57 lines (48 loc) · 1.69 KB
/
selenium_unittest.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
import unittest
import time
class OpenWeb(unittest.TestCase):
@classmethod
def setUpClass(cls):
"""
安裝最新版本的 ChromeDriver 並啟動 Chrome 瀏覽器。
將其指定給類別屬性 'driver'。
"""
cls.driver = webdriver.Chrome(ChromeDriverManager().install())
@classmethod
def tearDownClass(cls):
"""
關閉 Chrome 瀏覽器。
"""
cls.driver.quit()
def setUp(self):
"""
打開網站並找到標題元素。
將其指定給實例屬性 'title_element'。
"""
self.driver.get('https://shareboxnow.com/')
self.title_element = self.driver.find_element(by=By.CSS_SELECTOR, value='.entry-title-link')
def tearDown(self):
"""
等待幾秒,然後關閉 Chrome 瀏覽器。
"""
time.sleep(3)
"""
只要類別內 def 開頭符合 test 的就會被列入到測試項目
如果不符合就不會執行
"""
def test_open_shareboxnow_pass(self):
"""
檢查標題 - 通過
"""
self.assertEqual(self.title_element.text, '【2024】多種優惠商品資訊,千萬別錯過!', '名稱有誤')
def test_open_shareboxnow_fail(self):
"""
檢查標題 - 失敗
"""
self.assertEqual(self.title_element.text, '【2024】多種優惠商品資訊,千萬別錯過q!', '名稱有誤')
if __name__ == '__main__':
suite = unittest.TestLoader().loadTestsFromTestCase(OpenWeb)
unittest.TextTestRunner(verbosity=2).run(suite)