2023-09-26
开源项目
00

提升开源项目质量与效率:使用 GitHub Actions 自动化流程

相关信息

在开源项目中,质量和效率是至关重要的因素。本文将介绍如何利用 GitHub Actions,结合 ChatGPT Code Review、Autofix、Codecov 和 Publish PyPI 四个强大的 Actions,打造一个自动化流程,提升开源项目的代码质量和发布效率。

2024-10-16
测试开发
00

在前后端分离的系统中,前端和后端的数据状态不同步的情况较为常见,尤其是在复杂的交互场景中。导致前后端数据状态不一致的原因有很多,通常涉及网络传输、缓存机制、异步操作等。以下是一些常见场景或技术操作可能会导致数据状态不一致:

1. 异步操作未正确处理

  • 问题描述: 前端和后端的交互通常是异步的,前端发送请求后,可能会立刻更新本地的UI或状态,而没有等待后端返回确认结果。这种情况下,如果后端处理失败(比如数据未保存成功),前端状态和后端状态就会出现不一致。
  • 场景举例: 用户提交表单后,前端立即更新页面状态,假设提交成功,但实际上后端返回了失败响应。

解决办法: 确保异步操作的回调处理正确,前端只有在收到后端的成功响应后才更新状态,并处理失败场景。

2024-02-05
python
00

介绍@classmethod@abstractmethod@property@staticmethod这几个装饰器的使用。

在Python编程中,装饰器是一种强大而灵活的工具,可以在不修改源代码的情况下修改函数或类的行为。本文将介绍几个常用的装饰器,包括@classmethod@abstractmethod@property@staticmethod,并提供代码示例,以帮助你更好地理解它们的用法。

2024-02-05
python
00

背景

APScheduler 是一个强大的Python库,用于实现定时任务调度。然而,当我们在使用APScheduler时,可能会遇到一个常见的错误:MaxInstancesReachedError。这个错误通常发生在我们设置了大量的任务,而APScheduler无法同时处理所有任务的情况下。在本文中,我将介绍如何优化任务设定,以避免这个错误的产生。

问题

先来看一段报错描述

skipped: maximum number of running instances reached (1)

shell
Execution of job "task_send_pic_message (trigger: cron[hour='6', minute='0', second='0'], next run at: 2024-1-31 06:00:00 CST)" skipped: maximum number of running instances reached (1) Execution of job "task_send_pic_message (trigger: cron[hour='21', minute='0', second='0'], next run at: 2024-1-31 21:00:00 CST)" skipped: maximum number of running instances reached (1)
2024-02-05
测试开发
00

背景

在自动化测试中,使用Selenium进行浏览器自动化是一种常见的方式。然而,有时候在测试过程中会遇到浏览器的密码保存弹窗,这可能会干扰到自动化流程的进行。本文将介绍如何使用SeleniumChromeOptions来去除谷歌浏览器的密码保存弹窗。

如下图所示,在自动化流程中这个弹窗会固定在右上角阻挡页面操作!

image.png

准备工作

在开始之前,请确保已经完成以下准备工作:

  1. 安装最新版本的Chrome浏览器。
  2. 下载并安装与的Chrome浏览器版本匹配的Chromedriver驱动程序。

    最新的chromedriver下载地址:https://googlechromelabs.github.io/chrome-for-testing/

image.png

  1. 安装Selenium库,可以使用以下命令进行安装:

    pip install selenium