在自动化测试的过程中,可能会遇到来自浏览器的权限提示(摄像头、麦克风),今天,就讨论一下如何结局这个问题。

先来认识一下来自Firefox的权限提示,访问一个需要摄像头或者麦克风的网站

你可能觉得,一个弹窗而已,alert就可以解决呀,但是很抱歉,你定位不到“允许”和“不允许”的按钮

你可能觉得,我吧“记住此决定”勾上,然后选择“允许”,不就可以了吗,但是很抱歉,webdriver.Firefox()调起来的永远是一个干干净净的浏览器,你的设置,无效

那么关键点来了,我如何让webdriver.Firefox()调起一个含有配置信息的浏览器?

在我们的电脑上,存在着这样一个Firefox的文件夹,里面存放着默认的浏览器配置,我们每次手动打开的都是这个配置文件下的浏览器

参考路径如下C:\Users\Administrator\AppData\Roaming\Mozilla\Firefox\Profiles

webdriver.Firefox()的另一个使用方法:webdriver.Firefox("配置文件路径")

我们可以选择将上述的xxx.default添加进去,但如果我们的浏览器中存放了很多书签,或者有比较多的缓存,测试的效果和速度就会降低,

因此我们来配置一个新的

1.打开Firefox,在地址栏输入about:profiles,进入配置界面

2.点击“创建新的配置”,点击“下一步”

3.为你的配置文件起个名字,点击“完成”。

红框中显示的是你的配置文件将会保存的位置,你可选择“选择文件夹”自定义保存位置,也可以使用默认

4.查看配置文件

当前页面滑动到最下面就可以看到我们新建的文件了,你也可以将它设置为默认配置文件

5.调用配置文件

手动登录你要测试的网站,弹出权限提示的时候,设置为“允许”,“记住此决定”,再次使用代码进行测试的时候,就没有权限提示啦。

driver = webdriver.Firefox("C:\\Users\\Administrator\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\8amzwdw2.selenium")

Google浏览器的问题,咱们下次再聊

Firefox--摄像头麦克风权限的更多相关文章

  1. 升级iOS10之后调用摄像头/麦克风等硬件程序崩溃闪退的问题

    在升级到iOS10之后, 开发过程中难免会遇到很多的坑, 下面是一些常见的坑, 我做了一些整理, 希望对大家开发有帮助: &1. 调用视频,摄像头, 麦克风,等硬件程序崩溃闪退的问题: 要注意 ...

  2. iOS:麦克风权限检测和获取

    一.检测 该方法是用来判断麦克风是否进行过授权,如果授权过就直接进行需要的功能操作:如果没有进行授权,那么就要获取授权. AVAuthorizationStatus authStatus = [AVC ...

  3. EasyDarwin+ffmpeg进行PC(摄像头+麦克风)流媒体直播服务

    上一回我们描述了用EasyDarwin+ffmpeg进行摄像机直播的过程:ffmpeg推送,EasyDarwin转发,vlc播放 实现整个RTSP直播 我们再进行一个方面的描述,那就是pc摄像头+麦克 ...

  4. 流媒体技术学习笔记之(十四)FFmpeg进行笔记本摄像头+麦克风实现流媒体直播服务

    FFmpeg推送视频流,Nginx RTMP模块转发,VLC播放器播放,实现整个RTMP直播 查看本机电脑的设备 ffmpeg -list_devices true -f dshow -i dummy ...

  5. 前端多媒体(1)——获取摄像头&麦克风

    捕获视频/音频 PPT地址 长久以来,音频/视频捕获都是网络开发中的"圣杯".多年来,我们总是依赖于浏览器插件(Flash 或 Silverlight)实现这一点. 依靠 WebR ...

  6. 用EasyClient开源项目采集Windows摄像头/麦克风的音视频进行RTSP直播

    EasyClient是EasyDarwin开源流媒体团队开发的一款功能丰富的开源PC客户端项目,目前支持Windows.Android版本,后续将支持ios版本,其中Windows版本的EasyCli ...

  7. 快速构建Windows 8风格应用29-捕获图片与视频

    原文:快速构建Windows 8风格应用29-捕获图片与视频 引言 本篇博文主要介绍Windows 8中相机的概念.捕获图片与视频的基本原理.如何实现捕获图片与视频.相机最佳实践. 一.相机 关于相机 ...

  8. iOS10适配——相机,通讯录,麦克风等权限设置

    崩溃:[access] This app has crashed because it attempted to access privacy-sensitive data without a usa ...

  9. iOS:检测多媒体(相机、相册、麦克风)设备权限,弹框提示

    一.感言 新年伊始,万象更新,一转眼,就2019年了. 作为一个科班生,从事移动端开发好几年了,回顾曾经的摸爬滚打,兢兢业业,严格的来说,多少算是入行了. 过去成绩如何暂且不说,新的一年,我当加倍努力 ...

随机推荐

  1. MySQL与MongoDB的区别

    一.MongoDB简介 什么是MongoDB ?MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能.MongoDB 旨 ...

  2. asp.net实现服务器文件下载到本地

    1.说明 通过文件下载框实现将服务器上的文件下载到本地指定位置.这里需要指定服务器文件路径 try { string strFilePath = Server.MapPath("~" ...

  3. <a>标签 href和onclick

    先执行onclick函数,如果onclick函数正常,则跳转到href所指明的url,否则什么事情都不做 还是不行,尚未解决

  4. Python标准库 os

    (掌握os模块,你需要了解Linux或类Unix系统下常用命令的操作) os.name  指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' ...

  5. Codeforces Round #261 (Div. 2) C

    Description Recently Pashmak has been employed in a transportation company. The company has kbuses a ...

  6. linux下使用svn创建版本库和权限管理

    linux上的svn服务端如何和本地的电脑客户端结合使用 Linux上安装SVN服务器: 第一步:检查是否已安装 # rpm -qa subversion 第二步: 通过yum命令安装svnserve ...

  7. 用python编写的excel拆分小工具

    from datetime import date,datetime from openpyxl import Workbook from openpyxl import load_workbook ...

  8. JAVA字符串转日期或日期转字符串【转】

    JAVA字符串转日期或日期转字符串[转] 文章中,用的API是SimpleDateFormat,它是属于java.text.SimpleDateFormat,所以请记得import进 来! 用法: S ...

  9. C#实现较为实用的SQLhelper

    第一次写博客,想不到写什么好b( ̄▽ ̄)d ,考虑的半天决定从sqlhelper开始,sqlhelper对程序员来说就像helloworld一样,很简单却又很重要,helloworld代表着程序员萌新 ...

  10. 滚动字幕Marquee

    基本语法  <marquee>滚动文字 </marquee> 文字移动属性的设置  方向 <direction=#> #=left, right,up,down 方 ...