Python+ Selenium自动化登录腾讯QQ邮箱实例-自动化测试
更新时间:2022-03-31 09:35:33 作者:多测师 浏览:216
学习了Python语言一段时间后,在公司的项目里也使用到了python来写测试脚本,一些重复的操作都使用脚本来处理了。大大的提高工作效率,减少了一些手工重复的操作。
以下是使用unittest框架写的简单的邮箱自动登录实例,分享给大家,有不足之处可留言交流。
由于QQ邮箱登录的页面使用iFrame的设计,在开始写的时候因为找不到切换的方法,导致代码老是报错。
driver.switch_to.frame("login_frame")
在打开QQ邮箱首页后,需要先切换到login_frame的框里才可以进入输入帐号密码登录操作。
1 #!/usr/bin/env python
2 #_*_coding:utf-8_*_
3 #Author:Vincent Lan
4 import unittest,time
5 from selenium import webdriver
6 from selenium.webdriver.common.keys import Keys
7
8
9 class QQ_mail(unittest.TestCase):
10 def setUp(self):
11 self.driver = webdriver.Firefox()
12 self.driver.implicitly_wait(30)
13 self.base_url = "https://mail.qq.com"
14 self.verificationErrors = []
15 self.accept_next_alert = True
16 print("正在访问QQ邮箱")
17
18
19 def test_mail_login(self):
20 """QQ邮箱登录"""
21 driver = self.driver
22 driver.maximize_window()
23 driver.get(self.base_url + "/")
24
25 driver.switch_to.frame("login_frame")
26 driver.find_element_by_id("switcher_plogin").click()
27
28
29 driver.find_element_by_id("u").clear()
30 driver.find_element_by_id("u").send_keys("yourmailadd")
31
32 driver.find_element_by_id("p").clear()
33 driver.find_element_by_id("p").send_keys("your password")
34
35 driver.find_element_by_id("p").send_keys(Keys.ENTER)
36 #driver.find_element_by_id("login_button").click()
37 print("登录QQ邮箱成功")
38
39 """
40 def tearDown(self):
41 self.driver.quit()
42 self.assertEqual([], self.verificationErrors)
43 """
44 if __name__ == "__main__":
45 unittest.main()
如果登录后不需要自动关闭网页就要把def tearDown(self)注释掉。这样就可以查看邮件或编写邮件了。
1 """
2 def tearDown(self):
3 self.driver.quit()
4 self.assertEqual([], self.verificationErrors)
5 """
针对初学者的建议:python注重语句的优美,对缩进和换行都很严格,稍有不对齐的缩进都会报错,所以要注意了。
以上内容为大家介绍了自动化测试中的Python+ Selenium自动化登录腾讯QQ邮箱实例,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/