• 如何发送最新的测试报告到目标邮箱?


    一、知道测试报告的生成目录

    1、如果知道测试报告路径,可以通过自定义路径的方式:file_dir=r'd: est'

    2、通过os包中的函数获取目录路径再采取字符串路径相加的方式定义路径(一般采取这种方式),如:os.path.dirname()+'\test'

    二、测试报告目录中获取最新的测试报告

    1、知道目录后,我们需要将目录中的文件通过修改时间进行排序,那么首先我们需要知道怎么来获取文件时间:有三种获取时间的方法,分别为:

    os.path.getatime(file)   #输出最近访问时间1318921018.0
    os.path.getctime(file)   #输出文件创建时间
    os.path.getmtime(file)   #输出最近修改时间

    2、我们选择最近修改时间的函数:os.path.getmtime(file) 

    其它关于文件属性函数:
    time.gmtime(os.path.getmtime(file))   #以struct_time形式输出最近修改时间
    os.path.getsize(file)    #输出文件大小(字节为单位)
    os.path.abspath(file)    #输出绝对路径
    os.path.normpath(file)   #输出决定路径和文件名称,如:

    D:PycharmProjectsAPPTESTappAutoTest eport201809291118result.html

    3、获取目录下最新的修改时间

    按列表输出所有文件的最近修改时间并使用列表中的sort()函数进行排序。

    file_dir=os.path.dirname(os.path.abspath('.'))+'\report'#定义报告文件目录

    lists=os.listdir(file_dir)#将报告目录下所有文件返回为一个列表。其中os.listdir()函数的作用是返回指定的文件夹包含的文件或文件夹的名字的列表

    lists.sort(key=lambda fn:os.path.getatime(file_dir+"\"+fn))#获取每个文件最新修改时间并排序

    new_report=os.path.join(file_dir,lists[-1])#取排序后列表中最后的一个文件,即最新的报告文件

    三、lambda:匿名函数lambda为python中匿名函数,提供了更为灵活的函数的表达方法。一般函数定义格式有函数名的定义,如:
       def add(x,y)

             return x+yadd(3,4)

    lambda的定义:lambda parameters:express

       add=lambda x,y :x+y #匿名函数定义加法功能

       add(3,4)  #匿名函数调用

       key=lambda fn:os.path.getatime(file_dir+"\"+fn)  #“fn”为文件名称参数,“os.path.getatime(file_dir+"\"+fn) ”输出文件的目录和名字

    四、发送邮件
    将第三步中找到的文件,当作邮件附件发送见python怎么发送带附件的邮件方法,参考地址:http://www.runoob.com/python/python-tutorial.htmlpython SMTP部分。



  • 相关阅读:
    USB
    Google
    机型参数
    mac
    反编译
    xcode
    Ios 消息推送
    真机:特殊
    Android
    object-c
  • 原文地址:https://www.cnblogs.com/Ladylittleleaf/p/9753555.html
Copyright © 2020-2023  润新知