get_screenshot_as_file 截图失败原因_jenkins机器上get_screenshot_as_file(file_path) 截图不是当前-程序员宅基地

def get_screent_img(self):
   """"页面截图功能"""
   file_path = os.path.dirname(os.path.abspath(".")) + './screenshots/'
   # %Y-%m-%d_%H_%M_%S_
   now = time.strftime('%Y-%m-%d_%H:%M:%S')
   screen_name = file_path + now + '.png'
   print(screen_name) 
   try:
      self.driver.get_screenshot_as_file(screen_name)
      logger.info('页面截图 %s,截图路径在: /screenshots/目录下' % self.driver.get_screenshot_as_file(screen_name))
   except NameError as na:
      logger.info("截图失败:%s" % na)
      self.get_screent_img()





我在使用get_screenshot_as_file()方法截图的时候,发现已经截图,但是因为某种原因系统又自动把截图删掉了,
一开始我以为是我的路径有问题,我就把路径改为了全路径,但是还是一样的问题,
2.然后我仔细阅读了一下  get_screenshot_as_file() 的方法,又打印出来返回值,结果为False,果然是没有截图成功,
后来发现是时间格式的问题,  
%Y-%m-%d_%H:%M:%S

上面这种是错误的格式,windows文件名无法使用冒号,所有的包括         '' : / \ ? * < > |          这些特殊字符都无法使用,也无法保存,起名时需要注意。所以无法保存成功,换成下面这种

%Y-%m-%d_%H_%M_%S_

保存成功,截图成功。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Sily_Z/article/details/80989823

智能推荐

(HAL库学习4)STM32CubeMX HAL FreeRTOS 任务创建与删除(也会教直接用代码实现方式)_stm32cubu怎么删除工程-程序员宅基地

文章浏览阅读4.3k次,点赞50次,收藏45次。这次教的是使用STM32CubeMX使用FreeRTOS来进行任务的创建与任务的删除(其实还有FreeRTOS还有一些需要注意的地方,但是任务的创建与删除就是最重要的了,其他的会在后面讲到)首先说说对FreeRTOS的看法吧,这是公认的大面积使用的嵌入式操作系统,我之前使用的是ucos,FreeRTOS以前接触的不多,拿他来比较的话,FreeRTOS最大的又是就在于完全免费,所以向我以后会更新的..._stm32cubu怎么删除工程

串行接收器_串行数据接收器-程序员宅基地

文章浏览阅读52次。设计一个有限状态机,该状态机将在给定比特流时识别何时正确接收字节。它需要识别起始位,等待所有8个数据位,然后验证停止位是否正确。如果停止位未按预期出现,则 FSM 必须等到找到停止位后再尝试接收下一个字节。每个数据字节都与起始位和停止位一起发送,以帮助接收器从位流中分隔字节。使用一个起始位 (0)、8 个数据位和 1 个停止位 (1)。当没有传输任何内容(空闲)时,该线路也处于逻辑 1。_串行数据接收器

计算机视觉入门-程序员宅基地

文章浏览阅读296次。计算机视觉是一门研究如何使计算机“看”的学科,它涉及了图像处理、模式识别、机器学习等多个领域。

浅谈Json解析与序列化_序列化和json解析的区别-程序员宅基地

文章浏览阅读1.7w次,点赞6次,收藏16次。从头说起:首先的首先,什么是Json:一种数据表示形式,JSON:JavaScript Object Notation对象表示法Json语法规则:数据在键值对中数据由逗号分隔花括号保存对象方括号保存数组像这样:{ "firstName":"John" , "lastName":"Doe" }这样:{"em_序列化和json解析的区别

springboot的配置文件如何配置可以实现多个yml相互读取_springboot如何读取多个yml配置-程序员宅基地

文章浏览阅读2k次,点赞2次,收藏6次。在Spring Boot中,可以通过多种方式来实现配置文件的相互读取和组合。如果你想要在一个Spring Boot应用中使用多个YAML(.yml。_springboot如何读取多个yml配置

C语言中scanf(输入)和printf(输出)的用法详解_scanf输入printf输出-程序员宅基地

文章浏览阅读440次,点赞3次,收藏6次。我们可以看到运行结果123的前面空出了两行,所以这个就是占位符前面加数字的作用!,那么这个时候问题又来了,现在的情况是右对齐,我们如果想左对齐怎么办呢?我们可以看到,这个时候代码就已经左对齐了,其实后面还有2个空位,那么问题又来了,这个前面加数字的作用是什么呢?的意思就是限制输出的数字长度是6个位,小数点后的位数是2个位。默认的情况下printf()不对+进行显示,而对-进行显示,所以如果想要输出负数,就要在d的前面加上负号。的作⽤是将想要输出的内容输出到屏幕上,它名字⾥⾯的 f。_scanf输入printf输出

随便推点

部署Kubernetes kube-apiserver启动失败_kube-apiserver.service holdoff time over, scheduli-程序员宅基地

文章浏览阅读3.4w次,点赞2次,收藏6次。systemctl restart kube-apiserver启动失败[root@centos-master yum.repos.d]# systemctl status kube-apiserver.service● kube-apiserver.service - Kubernetes API Server Loaded: loaded (/usr/lib/systemd/syst..._kube-apiserver.service holdoff time over, scheduling restart.

Matlab 生成license_matlab 2023试用期license-程序员宅基地

文章浏览阅读845次,点赞8次,收藏5次。Matlab 服务器端激活_matlab 2023试用期license

CodeSign error: code signing is required for product type Application in SDK iOS-程序员宅基地

文章浏览阅读53次。原地址:CodeSign error: code signing is required for product type Application in SDK iOS 在真机测试的时候往往会突然出现这样一个错误,code signing is required for product type 'Application' in SDK 'iOS 7.0' ,就是说代码签名证书不对劲。..._hellocordova doesn't have a bundle identifier. add a value for product_bundl

【PTA】线性表的两个非递减集合求并集_数据结构线性表的两个非递减集合求并集pta-程序员宅基地

文章浏览阅读4.1k次,点赞6次,收藏7次。线性表的两个非递减集合求并集(山东大学威海校区大二数据结构实验)_数据结构线性表的两个非递减集合求并集pta

InputStream只能读取一次的解决办法_inpustrem只能读一次-程序员宅基地

文章浏览阅读1w次。有时候我们需要对同一个InputStream对象使用多次。比如,客户端从服务器获取数据 ,利用HttpURLConnection的getInputStream()方法获得Stream对象,这时既要把数据显示到前台(第一次读取),又想把数据写进文件缓存到本地(第二次读取)。但第一次读取InputStream对象后,第二次再读取时可能已经到Stream的结尾了(EOFException)或者Stream_inpustrem只能读一次

webpack配置-程序员宅基地

文章浏览阅读1.1w次,点赞35次,收藏143次。webpack是前端的打包工具打包的工作内容是什么扫描项目,生成整个项目所有模块的依赖关系,根据配置对模块进行合并,生成一个单独的文件。修改html文件,让html文件引用生成后的文件将浏览器无法直接识别的(less、sass、ts)文件,转换成浏览器可以实现的内容。将浏览器暂时无法支持的JS新的语法转换成浏览器可以支持的语法。_webpack配置

推荐文章

热门文章

相关标签