news 2026/8/26 17:53:51

Python中的PO模型的实例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python中的PO模型的实例
1.PO模型在自动化中经常会被使用到,一下就是PO模型的具体实例

2.实现BasePage
fromseleniumimportwebdriverfromselenium.webdriver.common.action_chainsimportActionChains#鼠标操作classBasePage():''' BasePage封装所有界面都公用的方法。 例如driver,find_element等 '''# 实例化BasePage类时,事先执行的__init__方法,该方法需要传递参数def__init__(self,driver,url):self.driver=driver self.base_url=url# 进入网址defget(self):self.driver.get(self.base_url)#元素定位,替代八大定位defget_element(self,*locator):returnself.driver.find_element(*locator)#点击defleft_click(self,*locator):ActionChains(self.driver).click(self.get_element(*locator)).perform()#输入defsend_text(self,text,*locator):self.driver.find_element(*locator).send_keys(text)#清除defclear_text(self,*locator):self.driver.find_element(*locator).clear()# 表单切换defswitch_iframe(self,*locator):self.driver.switch_to.frame(self.driver.find_element(*locator))#窗口切换defswitch_window(self,n):self.driver.switch_to.window(self.driver.window_handles[n])
3.实现SearchPage
fromselenium.webdriver.common.byimportByfrombase.base_pageimportBasePageclassSearchOne(BasePage):def__init__(self,driver,url):BasePage.__init__(self,driver,url)#进入百度defopen_baidu(self):self.get()#输入数据definput_search_content(self,text):self.send_text(text,By.ID,"kw")# 点击按钮defclick_baidu_search(self):self.left_click(By.ID,"su")defclick_open_hao(self):self.left_click(By.XPATH,".//*[@id='1']/h3/a[1]")
4.实现TestCase `` ```pythonimportunittestfromseleniumimportwebdriverfrompage.page_oneimportSearchOnefrompage.page_twoimportSearchTwoclassBaiBu(unittest.TestCase):@classmethoddefsetUpClass(cls)->None:cls.driver=webdriver.Firefox()cls.driver.implicitly_wait(10)deftest001(self):url="http://www.baidu.com"s=SearchOne(self.driver,url)s.open_baidu()s.input_search_content("123")s.click_baidu_search()s.click_open_hao()self.driver.switch_to.window(self.driver.window_handles[1])deftest002(self):s=SearchTwo(self.driver,"")s.open_baidu_map()deftearDown(self)->None:# self.driver.quit()passif__name__=='__main__':unittest.main()
5.pytest模式写法
fromseleniumimportwebdriverclassTest_loginDvwa():deftest_login(self):self.driver=webdriver.Firefox()self.url="http://10.5.1.247/dvwa/login.php"username="admin"password="password"sr=DvwaPage(self.driver,self.url)sr.login_dvwa(username,password)sr.search("nick")ifname==‘main’:pytest.main(["-sq","test_loginDvwa.py"])
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/22 18:32:53

巴菲特如何看待公司社会责任:企业公民的角色

巴菲特如何看待公司社会责任:企业公民的角色 关键词:巴菲特、公司社会责任、企业公民、股东利益、长期价值 摘要:本文深入探讨了巴菲特对于公司社会责任的看法,将企业视为“企业公民”这一独特视角展开分析。详细阐述了背景知识&a…

作者头像 李华
网站建设 2026/8/22 22:14:46

【回溯】二叉树的所有路径

求解代码 public List<String> binaryTreePaths(TreeNode root) {List<String> ans new ArrayList<>();if (root null) {return ans;}StringBuilder sb new StringBuilder();backtrack(root, sb, ans);return ans;}private void backtrack(TreeNode root,…

作者头像 李华
网站建设 2026/8/21 16:36:30

AI原生应用里语义搜索的智能交互体验

AI原生应用里的「读心术」&#xff1a;解码语义搜索的智能交互体验 关键词 语义搜索、自然语言理解、预训练模型、向量检索、智能交互、上下文感知、多模态融合 摘要 在AI原生应用&#xff08;AI-Native Apps&#xff09;的浪潮中&#xff0c;用户交互正从「命令式输入」向…

作者头像 李华
网站建设 2026/8/21 16:36:33

AI原生应用赋能业务流程增强的关键要点

AI原生应用赋能业务流程增强&#xff1a;构建智能驱动的未来工作方式 1. 引入与连接&#xff1a;从辅助工具到核心引擎的转变 想象一家传统制造企业&#xff0c;过去十年间不断尝试引入各种AI工具优化生产流程——从预测性维护的孤立系统&#xff0c;到客户服务的聊天机器人&am…

作者头像 李华
网站建设 2026/8/25 20:08:18

基于SSH的BBS论坛系统_开题报告

目录 SSH框架简介BBS论坛系统功能模块技术实现方案系统特色设计开发环境配置 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 SSH框架简介 SSH框架是Struts2、Spring和Hibernate三个开源框架的整合&#…

作者头像 李华
网站建设 2026/8/21 16:36:31

基于SSM的长沙旅游攻略平台的设计与开发开题报告

目录 研究背景与意义研究目标关键技术系统功能设计创新点预期成果进度计划 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 研究背景与意义 随着旅游业的快速发展&#xff0c;个性化、智能化的旅游信息服…

作者头像 李华