Files
go-xcipher/.github/workflows/stability-tests.yml
landaiqing 427e7d8766
Some checks are pending
Stability Tests / Stability Tests (1.24, macos-latest) (push) Waiting to run
Stability Tests / Stability Tests (1.24, ubuntu-latest, true) (push) Waiting to run
Stability Tests / Stability Tests (1.24, windows-latest) (push) Waiting to run
🔒 Optimize stability and performance testing
2025-03-14 11:44:50 +08:00

65 lines
1.8 KiB
YAML

name: Stability Tests
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
stability-tests:
name: Stability Tests
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
go-version: ['1.24']
include:
- os: ubuntu-latest
go-version: '1.24'
run-long-tests: true
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install Go ${{ matrix.go-version }}
uses: actions/setup-go@v3
with:
go-version: ${{ matrix.go-version }}
- name: Display Go Version
run: go version
- name: Install Dependencies
run: go mod download
- name: Run Basic Tests
run: go test -v -race
- name: Run XCipher Stream Tests
run: go test -v -run 'TestStream(EncryptDecrypt|EncryptDecryptWithOptions|ParallelProcessing|Cancellation|Errors)'
- name: Run XCipher Feature Tests
run: go test -v -run 'Test(CPUFeatureDetection|DynamicParameterAdjustment|OptimizedStreamOptions|ZeroCopyMechanism|AutoParallelDecision)'
- name: Run Concurrent Load Test
if: ${{ matrix.run-long-tests }}
run: go test -v -run TestConcurrentLoad -timeout 30m
- name: Run Fault Tolerance Test
if: ${{ matrix.run-long-tests }}
run: go test -v -run TestFaultTolerance -timeout 10m
- name: Run Resource Constraints Test
if: ${{ matrix.run-long-tests }}
run: go test -v -run TestResourceConstraints -timeout 20m
- name: Run Long-term Stability Test
if: ${{ matrix.run-long-tests }}
run: go test -v -run TestLongRunningStability -timeout 20m
- name: Run Benchmark Tests
if: ${{ matrix.run-long-tests }}
run: go test -bench=. -benchmem -timeout 30m