selenium-弹窗操作(八)

本次以笔者公告栏的 打赏 弹窗为例

对弹窗中的一些操作进行封装后,在测试中使用

作用:减少对弹窗反复操作时进行定位的麻烦,以后使用中都直接调用即可达到目的

复制代码
 1 # coding=utf-8
 2 
 3 from selenium import webdriver
 4 import unittest, time
 5 
 6 class dialogManu(unittest.TestCase):
 7 
 8 
 9     def dialog(self):
10         u"定位dialog"
11         dialog = self.dr.find_element_by_class_name('shang_box')
12         return dialog
13 
14     def dialog_close(self):
15         u"关闭弹窗"
16         dialog = dialogManu.dialog(self)
17         close = dialog.find_element_by_class_name('shang_close').click()
18         return close
19 
20     def dialog_select_pay(self,text):
21         u"弹窗中支付选则"
22         dialog = dialogManu.dialog(self)
23         pay_items = dialog.find_elements_by_class_name('pay_item')
24 
25         if text == "微信":
26             pay_select = pay_items[1].click()
27         elif text == "支付宝":
28             pay_select = pay_items[0].click()
29         else:
30             print("没有找到" + text)
31 
32         return pay_select
33 
34 
35     def test_dialog(self):
36         u"testcase"
37         self.dr = webdriver.Chrome()
38         self.dr.maximize_window()
39         url = "https://www.cnblogs.com/tynam/p/10260021.html"
40         self.dr.get(url)
41         self.dr.implicitly_wait(10)
42 
43         # 进入到支付dialog
44         self.dr.find_element_by_class_name('dashang').click()
45         time.sleep(1)
46 
47         dialog = dialogManu.dialog(self)
48         # 选则微信支付
49         dialogManu.dialog_select_pay(self, "微信")
50 
51         # 关闭dialog
52         dialogManu.dialog_close(self)
53 
54         # 关闭浏览器
55         self.dr.close()
56 
57 if __name__ == '__main__':
58     unittest.main()
复制代码

 

这而暂时只是对单个弹窗进行封装的处理

在实际项目中可以对项目中所有的弹窗进行封装,都封装在该py文件中

以后自动化脚本中遇到弹窗均可调用该方法

 

posted @   Tynam.Yang  阅读(1093)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示