zoukankan      html  css  js  c++  java
  • 如何发送最新的测试报告到目标邮箱?

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

    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部分。



  • 相关阅读:
    查找第一个不重复的字符问题
    gops
    关于 Go 中 Map 类型和 Slice 类型的传递
    Go 程序的性能优化及 pprof 的使用
    Go语言标准库_输入/输出
    Linux 终端 Bash 常用快捷键介绍及经验
    蓄水池采样算法(Reservoir Sampling)
    Guice 依赖绑定
    基本动态规划之硬币问题
    程序打包成jar 获取不到工程目录下文件的问题
  • 原文地址:https://www.cnblogs.com/Ladylittleleaf/p/9753555.html
Copyright © 2011-2022 走看看