لتطبيقات الويب
دمج اختبارات WebdriverIO الخاصة بك مع Percy
قبل التكامل، يمكنك استكشاف برنامج تعليمي لبناء عينة Percy لـ WebdriverIO. قم بدمج اختبارات WebdriverIO الآلية مع BrowserStack Percy وإليك نظرة عامة على خطوات التكامل:
الخطوة 1: إنشاء مشروع Percy
قم بتسجيل الدخول إلى Percy. في Percy، أنشئ مشروعًا من النوع، ويب، ثم قم بتسمية المشروع. بعد إنشاء المشروع، يقوم Percy بإنشاء رمز. دوّنه. يجب عليك استخدامه لتعيين متغير البيئة الخاص بك في الخطوة التالية.
للحصول على تفاصيل حول إنشاء مشروع، راجع إنشاء مشروع Percy.
الخطوة 2: تعيين رمز المشروع كمتغير بيئة
قم بتشغيل الأمر المعطى لتعيين PERCY_TOKEN كمتغير بيئة:
export PERCY_TOKEN="<your token here>" // macOS or Linux
$Env:PERCY_TOKEN="<your token here>" // Windows PowerShell
set PERCY_TOKEN="<your token here>" // Windows CMD
الخطوة 3: تثبيت تبعيات Percy
قم بتثبيت المكونات المطلوبة لإنشاء بيئة التكامل لمجموعة الاختبار الخاصة بك.
لتثبيت التبعيات، قم بتشغيل الأمر التالي:
npm install --save-dev @percy/cli @percy/webdriverio
الخطوة 4: تحديث سكريبت الاختبار الخاص بك
استورد مكتبة Percy لاستخدام الطريقة والسمات المطلوبة لأخذ لقطات الشاشة. يستخدم المثال التالي وظيفة percySnapshot() في الوضع المتزامن:
import percySnapshot from '@percy/webdriverio';
describe('webdriver.io page', () => {
it('should have the right title', async () => {
await browser.url('https://webdriver.io');
await expect(browser).toHaveTitle('WebdriverIO · Next-gen browser and mobile automation test framework for Node.js');
await percySnapshot('webdriver.io page');
});
});
عند استخدام WebdriverIO في الوضع المستقل، قدم كائن المتصفح كوسيطة أولى لوظيفة percySnapshot:
import { remote } from 'webdriverio'
import percySnapshot from '@percy/webdriverio';
const browser = await remote({
logLevel: 'trace',
capabilities: {
browserName: 'chrome'
}
});
await browser.url('https://duckduckgo.com');
const inputElem = await browser.$('#search_form_input_homepage');
await inputElem.setValue('WebdriverIO');
const submitBtn = await browser.$('#search_button_homepage');
await submitBtn.click();
// the browser object is required in standalone mode
percySnapshot(browser, 'WebdriverIO at DuckDuckGo');
await browser.deleteSession();
وسائط طريقة اللقطة هي:
percySnapshot(name[, options])
الوضع المستقل
percySnapshot(browser, name[, options])
- browser (مطلوب) - كائن متصفح WebdriverIO
- name (مطلوب) - اسم اللقطة؛ يجب أن يكون فريدًا لكل لقطة
- options - انظر خيارات التكوين لكل لقطة
لمعرفة المزيد، راجع لقطة Percy.