Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance E2E Testing in seata-samples with Multiple Environment Combinations #7178

Open
slievrly opened this issue Feb 22, 2025 · 2 comments
Open
Labels
task: help-wanted Extra attention is needed

Comments

@slievrly
Copy link
Member

Hi team,

I would like to propose an enhancement to the E2E testing suite in the seata-samples project. Currently, thorough testing across a variety of environments is essential to ensure the consistent stability and robustness of Seata.

Proposal

Introduce E2E tests that cover a variety of environments and configurations, specifically focusing on combinations of:

  • Different JDK versions
  • MySQL Driver versions
  • System architectures (e.g., x86, ARM)

Rationale

Testing with diverse environment setups will help in identifying potential issues and incompatibilities that may arise due to:

  • Variations in JDK versions which may affect library compatibility and runtime behavior.
  • Different versions of MySQL Driver that might impact database connectivity and transactions.
  • Architectural differences that could affect performance and execution, especially in distributed scenarios.

Expected Benefits

  • Early detection of environment-specific bugs and issues.
  • Assurance of Seata's performance and stability across a wide range of production-like environments.
  • Increased confidence for users deploying Seata in varied configurations.

Implementation Considerations

  • Set up a CI/CD pipeline that can automatically execute E2E tests across different environment matrices.
  • Utilize Docker containers or virtualization to simulate different system architectures and JDK versions.
  • Integrate with existing test frameworks to ensure coverage and reporting are comprehensive.
@slievrly slievrly added the task: help-wanted Extra attention is needed label Feb 22, 2025
@YongGoose
Copy link
Contributor

@slievrly

I would like to work on this issue, as we discussed via email.
However, it might take long time to complete. 😅

@slievrly
Copy link
Member Author

slievrly commented Mar 8, 2025

@slievrly

I would like to work on this issue, as we discussed via email. However, it might take long time to complete. 😅

Just stick to your schedule. The main purpose of this task is to use the same source code in seata-samples, but with different workflow configurations to test compatibility for various environments. JDK and Arch are relatively easy to do, and it is important to look at how runtime dependencies like MySQL are dynamically set in the pipeline.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
task: help-wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants