前言
我的上一篇文章讲了POM的介绍,这一片呢我想讲讲普通的Selenium代码封装成POM模式,废话不多说我们直接开始吧。
1、案例说明:
提示:这里只是提供一种封装的思路, 小伙伴们可以根据自己的实际情况,按需封装。
以下是简单普通的登录测试用例
# 1. 导入包
from selenium import webdriver
import time
# 2. 打开谷歌浏览器(获取浏览器操作对象)
driver = webdriver.Chrome()
# 3. 打开快递100网站
url = "https://sso.kuaidi100.com/sso/authorize.do"
driver.get(url)
time.sleep(3)
# 4. 登陆网站
driver.find_element_by_id("name").send_keys('xxxxxxxxxxx')
driver.find_element_by_id("password").send_keys('xxxxxx')
driver.find_element_by_id("submit").click()
time.sleep(3)
# 5. 关闭浏览器
driver.quit()
那我们如何进行一个改造升级呢?
2.加入unittest测试框架
# 1. 导入包
from selenium import webdriver
import time
import unittest
# 定义测试类
class TestCaseLogin(unittest.TestCase):
def setUp(self) -> None:
"""
前置函数
用于打开浏览器,连接数据库,初始化数据等操作
"""
# 2. 打开谷歌浏览器(获取浏览器操作对象)
self.driver = webdriver.Chrome()
# 3. 打开快递100网站
url = "https://sso.kuaidi100.com/sso/authorize.do"
self.driver.get(url)
time.sleep(3)
def tearDown(self) -> None:
"""
后置函数
用于关闭浏览器,断开数据库连接,清理测试数据等操作
"""
# 5. 关闭浏览器
self.driver.quit()
def testLogin(self):
"""登陆测试用例"""
self.driver.find_element_by_id("name").send_keys('xxxxxxxxxxx')
self.driver.find_element_by_id("password").send_keys('xxxxxx')
self.driver.find_element_by_id("submit").click()