خيارات الطرق
خيارات الطرق هي الخيارات التي يمكن تعيينها لكل طريقة. إذا كان للخيار نفس المفتاح كخيار تم تعيينه أثناء تهيئة البرنامج المساعد، فإن خيار الطريقة هذا سيلغي قيمة خيار البرنامج الم ساعد.
خيارات الحفظ
disableBlinkingCursor
- النوع:
boolean
- إلزامي: لا
- القيمة الافتراضية:
false
- مدعوم في: الويب، التطبيق الهجين (Webview)
تمكين/تعطيل "وميض" مؤشر الكتابة في جميع عناصر input
وtextarea
و[contenteditable]
في التطبيق. إذا تم تعيينه على true
، سيتم تعيين مؤشر الكتابة إلى transparent
قبل التقاط لقطة شاشة وإعادة تعيينه عند الانتهاء
disableCSSAnimation
- النوع:
boolean
- إلزامي: لا
- القيمة الافتراضية:
false
- مدعوم في: الويب، التطبيق الهجين (Webview)
تمكين/تعطيل جميع رسوم CSS المتحركة في التطبيق. إذا تم تعيينه على true
، سيتم تعطيل جميع الرسوم المتحركة قبل التقاط لقطة شاشة وإعادة تعيينها عند الانتهاء
enableLayoutTesting
- النوع:
boolean
- إلزامي: لا
- القيمة الافتراضية:
false
- يستخدم مع: جميع الطرق
- مدعوم في: الويب
سيؤدي هذا إلى إخفاء جميع النصوص في الصفحة بحيث يتم استخدام التخطيط فقط للمقارنة. سيتم الإخفاء عن طريق إضافة النمط 'color': 'transparent !important'
إلى كل عنصر.
للحصول على المخرجات، انظر مخرجات الاختبار
باستخدام هذه العلامة، سيحصل كل عنصر يحتوي على نص (ليس فقط p, h1, h2, h3, h4, h5, h6, span, a, li
، ولكن أيضًا div|button|..
) على هذه الخاصية. لا يوجد خيار لتخصيص هذا.
hideScrollBars
- النوع:
boolean
- إلزامي: لا
- القيمة الافتراضية:
true
- يستخدم مع: جميع الطرق
- مدعوم في: الويب، التطبيق الهجين (Webview)
إخفاء أشرطة التمرير في التطبيق. إذا تم تعيينه على true، سيتم تعطيل جميع أشرطة التمرير قبل التقاط لقطة شاشة. تم تعيين هذا افتراضيًا على true
لمنع مشاكل إضافية.
hideElements
- النوع:
array
- إلزامي: لا
- يستخدم مع: جميع الطرق
- مدعوم في: الويب، التطبيق الهجين (Webview)، التطبيق الأصلي
يمكن لهذه الطريقة إخفاء عنصر واحد أو عدة عناصر عن طريق إضافة الخاصية visibility: hidden
إليها من خلال توفير مصفوفة من العناصر.
removeElements
- النوع:
array
- إلزامي: لا
- يستخدم مع: جميع الطرق
- مدعوم في: الويب، التطبيق الهجين (Webview)، التطبيق الأصلي
يمكن لهذه الطريقة إزالة عنصر واحد أو عدة عناصر عن طريق إضافة الخاصية display: none
إليها من خلال توفير مصفوفة من العناصر.
resizeDimensions
- النوع:
object
- إلزامي: لا
- القيمة الافتراضية:
{ top: 0, right: 0, bottom: 0, left: 0}
- يستخدم مع: فقط لـ
saveElement
أوcheckElement
- مدعوم في: الويب، التطبيق الهجين (Webview)، التطبيق الأصلي
كائن يجب أن يحتوي على عدد البكسلات top
وright
وbottom
وleft
التي تحتاج إلى جعل قصاصة العنصر أكبر.
fullPageScrollTimeout
- النوع:
number
- إلزامي: لا
- القيمة الافتراضية:
1500
- يستخدم مع: فقط لـ
saveFullPageScreen
أوsaveTabbablePage
- مدعوم في: الويب
المهلة بالميلي ثانية للانتظار بعد التمرير. قد يساعد هذا في تحديد الصفحات ذات التحميل الكسول.
hideAfterFirstScroll
- النوع:
array
- إلزامي: لا
- يستخدم مع: فقط لـ
saveFullPageScreen
أوsaveTabbablePage
- مدعوم في: الويب
ستقوم هذه الطريقة بإخفاء عنصر واحد أو عدة عناصر عن طريق إضافة الخاصية visibility: hidden
إليها من خلال توفير مصفوفة من العناصر.
سيكون هذا مفيدًا عندما تحتوي الصفحة على سبيل المثال على عناصر لاصقة ستتمرر مع الصفحة إذا تم تمرير الصفحة ولكنها ستعطي تأثيرًا مزعجًا عند التقاط لقطة شاشة للصفحة الكاملة
waitForFontsLoaded
- النوع:
boolean
- إلزامي: لا
- القيمة الافتراضية:
true
- يستخدم مع: جميع الطرق
- مدعوم في: الويب، التطبيق الهجين (Webview)
يمكن تحميل الخطوط، بما في ذلك خطوط الطرف الثالث، بشكل متزامن أو غير متزامن. يعني التحميل غير المتزامن أن الخطوط قد يتم تحميلها بعد أن يحدد WebdriverIO أن الصفحة قد تم تحميلها بالكامل. لمنع مشاكل عرض الخطوط، سينتظر هذا الوحدة، بشكل افتراضي، حتى يتم تحميل جميع الخطوط قبل التقاط لقطة شاشة.
خيارات المقارنة (الفحص)
خيارات المقارنة هي خيارات تؤثر على طريقة تنفيذ المقارنة بواسطة ResembleJS.
- يمكن استخدام جميع الخيارات من خيارات الحفظ لطرق المقارنة
- يمكن استخدام جميع خيارات المقارنة أثناء تهيئة الخدمة أو لكل طريقة فحص فردية. إذا كا ن لخيار الطريقة نفس المفتاح كخيار تم تعيينه أثناء تهيئة الخدمة، فإن خيار مقارنة الطريقة سيلغي قيمة خيار مقارنة الخدمة.
- يمكن استخدام جميع الخيارات لـ:
- الويب
- التطبيق الهجين
- التطبيق الأصلي
ignoreAlpha
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
مقارنة الصور وتجاهل القناة ألفا.
blockOutSideBar
- النوع:
boolean
- القيمة الافتراضية:
true
- إلزامي: لا
- ملاحظة: يمكن استخدامه فقط لـ
checkScreen()
. هذا للآيباد فقط
حظر الشريط الجانبي تلقائيًا لأجهزة آيباد في وضع أفقي أثناء المقارنات. هذا يمنع حدوث أخطاء في مكون علامة التبويب/الخاص/المرجعية الأصلي.
blockOutStatusBar
- النوع:
boolean
- القيمة الافتراضية:
true
- إلزامي: لا
- ملاحظة: هذا للجوال فقط
حظر شريط الحالة وشريط العناوين تلقائيًا أثناء المقارنات. هذا يمنع حدوث أخطاء في الوقت أو الواي فاي أو حالة البطارية.
blockOutToolBar
- النوع:
boolean
- القيمة الافتراضية:
true
- إلزامي: لا
- ملاحظة: هذا للجوال فقط
حظر شريط الأدوات تلقائيًا.
ignoreAntialiasing
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
مقارنة الصور وتجاهل التنعيم.
ignoreColors
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
على الرغم من أن الصور ملونة، ستقارن المقارنة صورتين بالأبيض والأسود
ignoreLess
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
مقارنة الصور والمقارنة بـ red = 16, green = 16, blue = 16, alpha = 16, minBrightness=16, maxBrightness=240
ignoreNothing
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
مقارنة الصور والمقارنة بـ red = 0, green = 0, blue = 0, alpha = 0, minBrightness=0, maxBrightness=255
rawMisMatchPercentage
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
إذا كانت قيمتها true، فستكون النسبة المئوية المرجعة مثل 0.12345678
، القيمة الافتراضية هي 0.12
returnAllCompareData
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
سيؤدي هذا إلى إرجاع جميع بيانات المقارنة، وليس فقط النسبة المئوية للاختلاف
saveAboveTolerance
- النوع:
number
- القيمة الافتراضية:
0
- إلزامي: لا
القيمة المسموح بها لـ misMatchPercentage
التي تمنع حفظ الصور ذات الاختلافات
largeImageThreshold
- النوع:
number
- القيمة الافتراضية:
0
- إلزامي: لا
يمكن أن تؤدي مقارنة الصور الكبيرة إلى مشاكل في الأداء.
عند توفير رقم لعدد البكسلات هنا (أعلى من 0)، تتخطى خوارزمية المقارنة البكسلات عندما يكون عرض الصورة أو ارتفاعها أكبر من largeImageThreshold
بكسل.
scaleImagesToSameSize
- النوع:
boolean
- القيمة الافتراضية:
false
- إلزامي: لا
يقوم بتحجيم صورتين إلى نفس الحجم قبل تنفيذ المقارنة. يوصى بشدة بتمكين ignoreAntialiasing
وignoreAlpha
خيارات المجلدات
مجلد الخط الأساسي ومجلدات لقطات الشاشة (الفعلية، الاختلاف) هي خيارات يمكن تعيينها أثناء تهيئة البرنامج المساعد أو الطريقة. لتعيين خيارات المجلد على طريقة معينة، قم بتمرير خيارات المجلد إلى كائن خيارات الطرق. يمكن استخدام هذا لـ:
- الويب
- التطبيق الهجين
- التطبيق الأصلي
import path from 'node:path'
const methodOptions = {
actualFolder: path.join(process.cwd(), 'customActual'),
baselineFolder: path.join(process.cwd(), 'customBaseline'),
diffFolder: path.join(process.cwd(), 'customDiff'),
}
// You can use this for all methods
await expect(
await browser.checkFullPageScreen("checkFullPage", methodOptions)
).toEqual(0)
actualFolder
- النوع:
string
- إلزامي: لا
مجلد للقطة التي تم التقاطها في الاختبار.
baselineFolder
- النوع:
string
- إلزامي: لا
مجلد للصورة الأساسية التي يتم استخدامها للمقارنة.
diffFolder
- النوع:
string
- إلزامي: لا
مجلد لفرق الصورة الذي تم إنشاؤه بواسطة ResembleJS.