RSSHub icon indicating copy to clipboard operation
RSSHub copied to clipboard

Enhance PR Testing Process: Implement Retry Mechanism and Expand `/test` Command Functionality

Open NekoAria opened this issue 1 year ago • 3 comments

What feature is it?

Improve the PR testing process, specifically:

  1. Implement a retry mechanism for Puppeteer routes that are likely to time out after 30 seconds.
  2. Enhance the /test command to be applicable for testing changes in PRs, not just the master branch.

What problem does this feature solve?

  1. Currently, Puppeteer routes often time out after 30 seconds, resulting in 503 errors. There are no subsequent attempts to retest after such failures, leading to unreliable test results.
  2. The /test command is currently limited to testing the RSSHub running status of the master branch in the current repository. This doesn't allow for effective testing of changes proposed in PRs.

Additional description

Implementing these features would significantly improve the reliability and efficiency of our testing process. It would reduce false negatives in our CI pipeline and allow contributors to more effectively test their changes before merging.

This is not a duplicated feature request or new RSS proposal

NekoAria avatar Oct 15 '24 17:10 NekoAria

The /test command does not cover PRs since one can trigger it by an empty commit or editting the PR title/description, which IMHO much faster than typing /test and copy pasting the ```routes``` section.

TonyRL avatar Oct 16 '24 04:10 TonyRL

The /test command does not cover PRs since one can trigger it by an empty commit or editting the PR title/description, which IMHO much faster than typing /test and copy pasting the routes section.

However, this method doesn't support testing specific routes only, such as when previous test results returned 503 errors. Specifically, I'm referring to the situation I encountered in my previous PR: #17131.

Currently, if I only want to test the following routes, it's not possible to do so.

/picuki/profile/stefaniejoosten/tagged
/picuki/profile/stefaniejoosten/tagged/0

NekoAria avatar Oct 16 '24 05:10 NekoAria

Additionally, this is the testing process I conducted in my forked repository: https://github.com/NekoAria/RSSHub/pull/2. This should give you a clear understanding of why I believe this feature is meaningful.

NekoAria avatar Oct 16 '24 05:10 NekoAria