自动化测试基础篇--Selenium发送测试报告邮件

发邮件需要用到python两个模块,smtplib和email,这俩模块是python自带的,只需import即可使用。smtplib模块主要负责发送邮件,email模块主要负责构造邮件。其中MIMEText()定义邮件正文,Header()定义邮件标题。MIMEMulipart模块构造带附件。

Selenium发送邮件流程:

一、网易邮箱

Selenium发送邮件步骤:

1、导入smtplib和email模块;

2、准备发邮件的参数,每个邮箱的发件服务器都不一样,以163为例,百度搜到发件服务器为:smtp.163.com;

3、接下来就是写邮件的主题和正文内容,正文这里用html格式的;

4、最后调用发件服务。

5、参考代码

import smtplib
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart

# 以yeah邮箱为例
# ----------------发件相关参数----------------
smtpserver = ‘smtp.163.com‘
port = 0
sender = ‘[email protected]‘
password = ‘xxxxxxxxxxxx‘
receicer = ‘[email protected]‘

# ----------------编辑邮件内容----------------
subject = ‘发送邮件测试‘
body = ‘<p>发送邮件测试Test<p>‘
msg = MIMEText(body, ‘html‘, ‘UTF-8‘)
msg[‘from‘] = sender
msg[‘to‘] = receicer
msg[‘subject‘] = subject

# ------------------发送邮件-----------------
smtp = smtplib.SMTP()
smtp.connect(smtpserver)
smtp.login(sender, password)
smtp.sendmail(sender, receicer, msg.as_string())
smtp.quit()

二、腾讯邮箱

Selenium发送邮件步骤:

1、导入smtplib和email模块;

2、腾讯邮箱是需要SSL认证的,找到QQ邮箱授权码,打开QQ邮箱-设置-账号-POP3开启服务-开启;

3、发验证短信获取授权码,照着提示发个短信,如何点我已发送,就会收到授权码;

4、收到授权码后复制,保存下来,这个就可以当QQ邮箱的密码;

5、接下来就是写邮件的主题和正文内容,正文这里用html格式的;

6、最后调用发件服务。

7、参考代码

import smtplib
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
# 以QQ邮箱为例
# ----------------发件相关参数----------------
smtpserver = ‘smtp.qq.com‘
port = 0
sender = ‘[email protected]‘
password = ‘授权码‘
receicer = ‘[email protected]‘

# ----------------编辑邮件内容----------------
subject = ‘发送邮件测试‘
body = ‘<p>发送邮件测试Test<p>‘
msg = MIMEText(body, ‘html‘, ‘UTF-8‘)
msg[‘from‘] = sender
msg[‘to‘] = receicer
msg[‘subject‘] = subject

# ------------------发送邮件-----------------
smtp = smtplib.SMTP_SSL(smtpserver,port)
smtp.login(sender, password)
smtp.sendmail(sender, receicer, msg.as_string())
smtp.quit()

三、同时兼容网易类和腾讯类邮箱

四、多个收件人

1、把receiver参数改成list对象,单个多个都是可以收到的;

2、msg["to"]这个参数不能用list了,得先把receiver参数转化成字符串。

五、发送附件

六、参考代码

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author  : chen
# @File    : c.py
# @Software: PyCharm
import smtplib
from email.mime.text import MIMEText
from email.mime.application import MIMEApplication
from email.mime.multipart import MIMEMultipart
# 同时兼容网易类和腾讯类邮箱
# ----------------发件相关参数----------------
smtpserver = ‘smtp.qq.com‘
port = 0
sender = ‘[email protected]‘
password = ‘授权码‘
receicer = [‘[email protected]‘,‘[email protected]‘,]

# ----------------编辑邮件内容----------------
subject = ‘发送邮件测试‘
body = ‘<p>发送邮件测试Test<p>‘
msg = MIMEText(body, ‘html‘, ‘UTF-8‘)
msg[‘from‘] = sender
msg[‘to‘] = ‘;‘.join(receicer)
msg[‘subject‘] = subject

# 文字部分
part = MIMEText(‘TEST!!!‘)
msg.attach(part)
# 附件部分
#---xlsx类型附件---
part = MIMEApplication(open(‘D:\\test.xlsx‘,‘rb‘).read())
part.add_header(‘Content-Disposition‘, ‘attachment‘, filename="test.xlsx")
msg.attach(part)
# jpg类型附件(png类型和jpg一样)
part = MIMEApplication(open(‘D:\\test.jpg‘,‘rb‘).read())
part.add_header(‘Content-Disposition‘, ‘attachment‘, filename="test.jpg")
msg.attach(part)
# pdf类型附件
part = MIMEApplication(open(‘D:\\test.pdf‘,‘rb‘).read())
part.add_header(‘Content-Disposition‘, ‘attachment‘, filename="test.pdf")
msg.attach(part)
# mp3类型附件
part = MIMEApplication(open(‘D:\\test.mp3‘,‘rb‘).read())
part.add_header(‘Content-Disposition‘, ‘attachment‘, filename="test.mp3")
msg.attach(part)
# html类型
part = MIMEText(‘<html><h1>test!</h1></html>‘,‘html‘,‘utf-8‘)
msg.attach(part)

# ------------------发送邮件-----------------
try:
    smtp = smtplib.SMTP()
    smtp.connect(smtpserver)
    smtp.login(sender, password)
except:
    smtp = smtplib.SMTP_SSL(smtpserver,port)
    smtp.login(sender, password)
smtp.sendmail(sender, receicer, msg.as_string())
smtp.quit()

原文地址:https://www.cnblogs.com/yuer20180726/p/10789515.html

时间: 2024-10-31 05:49:20

自动化测试基础篇--Selenium发送测试报告邮件的相关文章

自动化测试基础篇--Selenium鼠标键盘事件

前面几篇文章我们学习了怎么定位元素,同时通过实例也展示了怎么切换到iframe,怎么输入用户名和密码,怎么点击登录按钮,首先我们先回顾一下元素的基本操作. 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.提交表单:submit() 今天这篇文章着重讲一下键盘和鼠标的模拟事件. 一.鼠标事件 1.首先模拟鼠标的操作需要先导入鼠标模块: from selenium.webdriver.common.action_chains

ant+jmeter+jenkins 发送测试报告邮件

二.部署配置 2.1 jmeter 2.1.1 jar包二次开发: 将jmeter目录D:\apache-jmeter-5.0\extras中的ant-jmeter-1.1.1.jar包进行反编译.添加2个测试类 MailTask和JavaMail.具体代码参考文件中的java文件.然后进行编译生成新的jar包ant-jmeter-1.1.2-SNAPSHOT.jar. 2.1.2 添加build文件和测试文件 在jmeter目录D:\apache-jmeter-5.0\test下新增文件bui

Python Selenium unittest+HTMLTestRunner实现 自动化测试及发送测试报告邮件

1.UI测试框架搭建-目录结构 2. 文件介绍 2.1.baseinfo->__init__.py 配置文件定义基础参数 #-*-coding:utf-8-*- #测试用例配置参数 base_url = "http://xxxxx.com" undirect_username = "username" undirect_password = "password" direct_username = "username"

使用selenium+selenium发送QQ邮件

参考 :    初识selenium-发送QQ邮件  链接------>https://blog.csdn.net/qiye005/article/details/80259607 前言: 为实现selenium+python自动发送QQ邮件功能,需要搭建的环境:安装selenium包(pip install selenium)及安装谷歌驱动器(http://chromedriver.storage.googleapis.com/index.html).并且要了解要selenium进行元素定位的

Python + HTMLTestRunner + smtplib 完成测试报告生成及发送测试报告邮件

一下代码是自己结合教材,并结合以往用到的实例编写的代码,可以做为参考 import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart from HTMLTestRunner import HTMLTestRunner from email.header import Header import unittest import time,os #==========

接口自动化测试--基础篇

点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是我们期待的方向,有更多兴趣的欢迎切磋,我们微信订阅号,联系方式如下: 更多书籍,敬请期待 上次分享了http协议后,很多朋友问,做接口自动化测试如何入门,今天小怪简单分享介绍下,1.我们需要的的基础知识,2.Fiddler接口测试演示,3.jmeter接口测演示,详细如下: 视频地址:https:/

以邮件的形式发送测试报告

1.创建一个Email 目录(文件夹),在 Email 中创建 bing.py测试用例 from selenium import webdriver from time import sleep import unittest # driver.find_element_by_xpath("//input[@id='sb_form_q']").send_keys("CMBC") # driver.find_element_by_xpath("//input

以邮件附件的形式发送测试报告

1. 创建 EmailAnnex目录, 在 EmailAnnex 下创建 bing.py,并编写 from selenium import webdriver from time import sleep import unittest class Bing(unittest.TestCase): """bing 搜索测试""" def setUp(self): self.driver = webdriver.Firefox() self.dri

发送垃圾邮件的问题

开发有道云笔记发送邮件功能.这是一个非常古老的功能,这也是一个非常没有用处的功能.其实就是为了做一个和竞品一样的功能.这个功能就是将一篇笔记发送成邮件.关于这个功能,每次测试时,总有测试人员来问,为什么我发的邮件被扔到了垃圾邮件里?每次回归测试都是如此,无一例外. 那么为什么会成为垃圾邮件呢? 1. 内容本身是垃圾,里面的内容写的都不是人话.都是"法3iron的萨芬女生大富豪ASF萨法" 这样的乱敲码. 2. 垃圾内容发送过多的账号,即使发送正常的内容,也可能会被标记为垃圾 3. 含有