0Pricing
Load Testing & Performance Benchmarking (JMeter & k6) · درس

k6 في GitHub Actions

أعد اختبارات k6 لتعمل تلقائيًا ضمن مسارات عمل GitHub Actions.

k6 في GitHub Actions درس مجاني في Load Testing & Performance Benchmarking (JMeter & k6) على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Load Testing & Performance Benchmarking (JMeter & k6)، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Load Testing & Performance Benchmarking (JMeter & k6) 4 دروس في المجموع.

بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.

Automating Performance Testing

Welcome to integrating performance testing with CI/CD! Continuous Integration (CI) and Continuous Delivery (CD) pipelines automate software development steps.

Bringing performance tests into this flow ensures that performance issues are caught early, before they reach users.

Why k6 in GitHub Actions?

GitHub Actions provides a powerful way to automate tasks directly within your GitHub repository. Here's why it's great for k6 performance tests:

  • Automation: Tests run automatically on code changes.
  • Consistency: The test environment is standardized.
  • Early Feedback: Catch performance regressions quickly.
  • Version Control: Your test scripts and workflows live with your code.

GitHub Actions Workflow Basics

A GitHub Actions workflow is defined by a YAML file in the .github/workflows/ directory of your repository.

It specifies when to run, what to run (jobs and steps), and on which operating system.

Our Simple k6 Test Script

Before creating the workflow, let's have a basic k6 script. This script will perform a simple HTTP GET request to a test endpoint. Save this as test.js in your repository.

import http from 'k6/http';
import { check, sleep } from 'k6';

export default function () {
  const res = http.get('https://test.k6.io');
  check(res, {
    'status is 200': (r) => r.status === 200,
  });
  sleep(1);
}

Creating the Workflow File

First, create a new directory .github/workflows/ in the root of your repository. Inside this, create a file named, for example, k6-perf-test.yml.

This file will define our automation steps.

Workflow Structure: Name & Trigger

Every workflow needs a name and a trigger (on). We'll trigger our test on every push to the main branch.

Here's the start of our k6-perf-test.yml file:

name: k6 Performance Test

on:
  push:
    branches:
      - main

jobs:

Defining the Test Job

Next, we define a job. A job is a set of steps that execute on the same runner. We'll call ours run-k6-test and use an ubuntu-latest runner.

name: k6 Performance Test

on:
  push:
    branches:
      - main

jobs:
  run-k6-test:
    runs-on: ubuntu-latest
    steps:

Checkout Code & Install k6

Inside our job's steps, we first need to check out our repository code, then install k6. We'll use a pre-built GitHub Action to easily install k6.

    steps:
      - name: Checkout repository
        uses: actions/checkout@v4

      - name: Install k6
        uses: k6io/action@v2.0.0

Executing the k6 Test

Finally, we add a step to run our test.js k6 script. We can specify options like the number of virtual users (-u) and duration (-d) directly.

      - name: Install k6
        uses: k6io/action@v2.0.0

      - name: Run k6 test
        run: k6 run -u 10 -d 30s test.js

Viewing Test Results

After committing your .yml file and test.js script to your GitHub repository, navigate to the Actions tab.

You'll see your workflow running. Click on the workflow run, then the run-k6-test job to view the detailed logs, including k6's output and results.

Workflow Essentials

Which of the following is the correct path and file extension for a GitHub Actions workflow file?

Recap & Next Steps

You've learned how to integrate k6 performance tests into GitHub Actions! This enables automated, consistent, and early performance feedback.

  • We explored the workflow structure.
  • Set up a k6 script and the YAML workflow file.
  • Configured steps for checking out code, installing k6, and running the test.
  • Understood how to view results in GitHub Actions.

Next, explore more advanced k6 features in your workflows, like reporting and thresholds!

الأسئلة الشائعة

هل درس «k6 في GitHub Actions» مجاني؟

نعم — نص درس «k6 في GitHub Actions» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Load Testing & Performance Benchmarking (JMeter & k6)، انتقل إلى CoddyKit PRO. تتضمن دورة Load Testing & Performance Benchmarking (JMeter & k6) 4 دروس في المجموع.

ماذا ستتعلم في «k6 في GitHub Actions»؟

أعد اختبارات k6 لتعمل تلقائيًا ضمن مسارات عمل GitHub Actions. تتمرن على Load Testing & Performance Benchmarking (JMeter & k6) مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Load Testing & Performance Benchmarking (JMeter & k6)؟

لا تُشترط خبرة سابقة. Load Testing & Performance Benchmarking (JMeter & k6) على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «k6 في GitHub Actions»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Load Testing & Performance Benchmarking (JMeter & k6) هذا؟

نعم. كل درس في Load Testing & Performance Benchmarking (JMeter & k6) يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. دمج JMeter مع Jenkins
  2. k6 في GitHub Actions
  3. بوابات الأداء وأهداف SLO
  4. تحليل الاتجاهات ووضع خطوط الأساس في CI
← العودة إلى Load Testing & Performance Benchmarking (JMeter & k6)