python 封装函数_Python+Selenium执行结果,封装函数,用Python

上文中,介绍了如何用python+selenium自动化测试实战:邮箱登录为例验证了登录成功的测试用例。那如果我们每次执行的结果都要去代码中查看,是不是也挺费劲的。应该怎么做呢?如果程序执行报错或者执行测试用例成功后,发送邮件通知我,咱就不用再打开代码去查看执行结果了,只需每天关注自己的邮件,执行失败的部分,进行提bug或者修改代码就可以了

如何用Python代码的形式实现自动发送SMTP邮件呢?

一、准备工作

需要进行开启要进行发件的邮箱的SMTP的授权,并生成授权码,在发送邮件是输入的密码为授权码,开启方式如下:

以qq邮箱为例:

设置——》账户——》下拉到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”

——》开启服务:POP3/SMTP服务 (如何使用 Foxmail 等软件收发邮件?)——》点击开启并生成授权码(备注:开启授权需要发短信)。生成后的结果如图

二、还是同样的在进行写代码之前,首先我们先理一下思路:

1.发送邮件我们需要输入什么?

(1)标题

(2)内容

(3)谁来发?

(4)发给谁?

2.发送过程有哪些?

(1)建立邮箱连接协议

(2)登录邮箱,登录邮箱时需要发送方的授权码

(3)点击发送

三、理完思路后,我们如何实现呢?

1.输入数据

(1)邮件的标题,需要引入import Header 这个模块,用里面的Header()方法

(2)邮件的内容,需要import MIMEText这个模块,使用MIMEText()函数,进行内容的数据的构建

(3)谁来发,目前不清楚,但是可以用一个请输入:from_email=input('请输入发件人邮箱名:')

(4)发给谁,to_email=input('请输入接收人邮箱')

2.发送过程:

(1)建立邮箱连接协议:

首先需要引入import smtplib模块,stmp=smtplib.SMTP(),建立连接:stmp.connect('smtp.qq.com',25)

(2)登录邮箱,登录邮箱时需要发送方的授权码

授权码:pwd=input('请输入授权码:')

登录:stmp.login(from_email,pwd)

(3)点击发送:stmp.sendmail()

四、以上分析完之后就可以进行代码实现了

1.首先我先把之前登录的邮箱登录这文中的代码封装成函数,剩余代码请参考邮箱登录

def email_login(url):#封装登录函数,url为形参,方便函数的调用

2.封装完成后,调用,并编写发送邮件的内容和执行发送的函数(如图):

你可能感兴趣的:(python,封装函数)