gspread测试抛出google.auth.exceptions.RefreshError错误,如何解决?
解决gspread测试时的
google.auth.exceptions.RefreshError错误 要解决测试失败的问题,核心是配置正确的Google OAuth 2.0凭证,步骤如下:
生成并配置Google API凭证
- 登录Google Cloud控制台,创建新项目,启用
Google Sheets API和Google Drive API。 - 在"API和服务" > "凭据"页面,创建OAuth 2.0客户端ID,应用类型选择"桌面应用"。
- 下载生成的JSON凭证文件,重命名为
credentials.json,放到gspread项目的根目录下。
- 登录Google Cloud控制台,创建新项目,启用
设置环境变量指向凭证
在终端中执行以下命令(替换为你的凭证文件实际路径):export GOOGLE_APPLICATION_CREDENTIALS="/your/path/to/credentials.json"完成首次授权
重新运行测试命令pytest tests/spreadsheet_test.py,此时会自动弹出浏览器窗口,要求你登录Google账号并授权应用访问权限。授权完成后,项目根目录会生成token.json文件,后续测试会自动使用该文件的刷新令牌等信息。确认权限有效性
确保你授权的Google账号拥有测试所需的表格访问权限(若测试依赖特定表格,需提前创建并确保账号可访问)。
完成以上步骤后,重新运行测试即可解决凭证缺失的报错。
内容的提问来源于stack exchange,提问作者Sharad
相关产品推荐
相关产品推荐

