google-chrome - 测试时如何跳过谷歌登录
问题描述
我需要做一些功能测试。
但是每次我运行测试时,Chromedriver都会打开应用程序页面,您可以在其中选择使用Google登录,当您按下该按钮时会出现一个新的弹出窗口,您必须选择一个电子邮件帐户,然后您将被重定向到该应用程序页。就像谷歌登录在任何网站上的常用方式一样。
如何在测试中绕过它?
第一个选择:让我的测试在常规模式而不是隐身模式下使用 chrome,所以也许我已经登录了 - 通过在运行测试之前登录。这可能吗?我只能找到在隐身模式下运行 chrome 的配置。
第二个选项:我似乎找不到任何标准的方式来通过谷歌登录。已经构建了一些东西,因为这种登录方法非常流行。
如果这可能是一个愚蠢的问题,我对测试很抱歉。
解决方案
告诉 chromedriver 使用自定义配置文件而不是默认的一次性配置文件行为。开关将是
user-data-dir=/path/to/your/custom/profile
如果您是第一次使用它,只需在窗口打开时手动登录,下次它会使用可用的 cookie。
请注意,使用配置文件而不是新配置文件的性能略有下降,并且来自不同测试的剩余 cookie/缓存可能会出现意外行为,因此建议您为每个正在测试的应用程序使用一个配置文件,并且不要不要使用您的常规 Chrome 配置文件。
推荐阅读
- reactjs - 如何使用 react-router v5 在路由 URL 中允许扩展文件名?
- python - python中的递归以查找列表中的奇数位置
- android - 显示无限滚动列表
- javascript - 第一次使用反应。如何将 rss 项目放入组件中?
- sockets - Xamarin Forms如何更改套接字连接的端口或IPAddress
- javascript - 如何从引导过滤器/搜索中获取当前选定的项目?
- perl - Perl 中的模式函数
- c# - 在 ASP.NET Core 3.0 中找不到“GeoAPI”和“IPoint”
- mysql - MYSQL 存储过程 - 如果满足某些条件,则更新多个列
- reactjs - 使用融合图未在反应中加载地图