前言
我的上一篇文章讲了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()

本文介绍了将Selenium测试代码转化为Page Object Model (POM)模式的过程,包括加入unittest测试框架、元素显示等待和POM模式的引入。通过POM模式,代码可读性增强,维护性提高,便于复用。文章总结了POM设计模式在UI自动化测试中的优势。
最低0.47元/天 解锁文章
1103

被折叠的 条评论
为什么被折叠?



