باختصار ، تقوم منصتا UserView و BrowserView بتحميل صفحات الويب في متصفحات حقيقية وتنفيذ جميع مكونات الصفحة. تستخدم المراقبة عبر HTTP (S) متصفحات اصطناعية محاكية ، وتقوم فقط بتنزيل عناصر الصفحة المطلوبة دون عرض.

تستخدم مهام HTTP (S) طلبات HTTP / S بين متصفح اصطناعي مخصص والخادم لإجراء المراقبة. في حين يمكن أيضا تسجيل مهام HTTP (S) وإعادة تشغيلها لمراقبة التطبيقات ، إلا أنها مفيدة بشكل خاص عند مراقبة أداء الخادم المرتبط بتطبيق ويب. كما تدعم مهام HTTP (S) المتغيرات الديناميكية وملفات تعريف الارتباط والمواقع الآمنة. تستخدم مهام HTTP (S) عملية مخصصة (وليس متصفحا عاديا) لإعادة تشغيل الخطوات المسجلة ، لذلك لا يوصى بها لمواقع الويب التي تستخدم تطبيقات الإنترنت الغنية (RIAs) بشكل كبير ، مثل JavaScript أو AJAX. نظرا لأن محتوى الويب قد لا يكون مضمنا في استجابة HTTP (S) (في حالة تشغيل AJAX) ، فقد تؤدي مهمة HTTP (S) إلى تنبيه خاطئ بشأن التحقق من صحة المحتوى.

من ناحية أخرى ، تستخدم المهام التي تم إنشاؤها من منصتي BrowserView و UserView متصفحا عاديا لفتح صفحة ويب وإعادة تشغيل المهمة. لذلك ، يوفر كلاهما التحقق من صحة المحتوى في نافذة متصفح حقيقية ، بحيث يمكنك التحقق بصريا من وجود المحتوى ذي الصلة. بالإضافة إلى ذلك ، يعيد UserView تشغيل مسار متعدد الخطوات من خلال تطبيق ، مثل عربة التسوق أو إرسال تسجيل الدخول. مراقبة UserView قادرة على محاكاة أحداث المتصفح الفعلية أثناء المراقبة ، مثل نقرات الماوس وكتابة النص و hovers. يتم تنفيذ هذه الأحداث في نافذة متصفح (انظر الصورة أعلاه). يمكن أن يقترن جانب المتصفح العادي لمراقبة UserView بتقنية “مطابقة الصورة” الافتراضية للوحة المفاتيح / الماوس ، والتي تتيح مراقبة تطبيقات الويب المعقدة للغاية التي تعمل بنظام RIAs ، بما في ذلك Silverlight و AJAX و Flex و Flash و JavaScript والتطبيقات الصغيرة والوظائف الإضافية ، بالإضافة إلى كائنات صفحة الويب الأخرى التي تتفاعل ديناميكيا مع المتصفح. بالإضافة إلى ذلك ، UserView قادر على تسجيل التقاط فيديو لتفاعل الصفحة عند اكتشاف المشكلات.

كيفية اتخاذ قرار

تتمثل إحدى طرق التحقق من نوع المراقبة الأكثر ملاءمة في تحديد ما إذا كنت تريد التأكد من توفر صفحة ويب للمستخدم النهائي أو التحقق مما إذا كان محتواها قد تم تقديمه بشكل صحيح.

إذا كان توفر عنوان URL موضع تساؤل، فحدد مهمة HTTP(S).

إذا كان التحقق من المحتوى مهما، فحدد مهمة من الأنظمة الأساسية BrowserView أو UserView. للاختيار بين BrowserView و UserView ، ما عليك سوى اختبار الصفحة التي تريد مراقبتها. إذا كانت الصفحة تحتوي على جافا سكريبت ، والتي قد تتلاعب بالمحتوى أو تحمله بالإضافة إلى ذلك من خوادمك أو خوادم الجهات الخارجية ، فمن المستحسن استخدام منصة UserView.

نظرا لهذه الاختلافات في مهمة HTTP (S) ومهام الأنظمة الأساسية BrowserView و UserView ، هناك أيضا اختلاف في وقت الاستجابة الذي يقاس به كل نوع من أنواع المهام.

انظر أدناه للحصول على مثال على الاختلافات:

يحتوي موقع الويب http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html؟ على حقل تحرير. إذا تم إدخال الرقم “1” في حقل التحرير ، فستقوم جافا سكريبت بتقديم طلب http://daniel.lorch.cc/docs/ajax_simple/validate.php ، والتي يجب أن تعرض سلسلة “اسم المستخدم قصير جدا” وتعرضها على أنها HTML.

نظرا لأن البرنامج النصي لمراقبة UserView يحاكي إجراء متصفح حقيقي ، فسوف يقوم بتنفيذ الخطوات التالية: تحميل الصفحة ، والعثور على حقل التحرير ، وإدخال “1” ؛ الإجراء النهائي هو التحقق من صحة الكلمة الرئيسية التي يتم عرض سلسلة “اسم المستخدم قصير جدا” في HTML:

UserView البرنامج النصي

script_version=1.4; recorder_version=1.26.6.23847; التاريخ = 17.11.2010 ؛ IE=8.0.6001.18702;

DMBrowser dmb0 = null;

الخطوة (1 ، @” – http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html؟”) ؛

dmb0 = علامات التبويب.نيوتاب();

dmb0. الذهاب إلى (“http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html؟”) ؛

dmb0. TextField(“//INPUT[not(@NAME) and not(@TYPE)]”). انقر فوق ();

dmb0. TextField(“//INPUT[not(@NAME) and not(@TYPE)]”). TypeText(“1″);

DMAssert.CHECK(@”البحث عن ‘اسم مستخدم قصير جدا'”, ()=>dmb0. Text.Contains(@”اسم المستخدم قصير جدا”), dmb0);

تقوم مراقبة HTTP (S) بتنفيذ هذه المهمة بشكل مختلف. يحاكي طلبات HTTP (S) منخفضة المستوى. على سبيل المثال، إذا تم تحويل مثال مراقبة UserView السابق إلى عملية مراقبة HTTP (S)، يتم إجراء المراقبة كمهمتين HTTP مع طلبات GET:

مهام HTTP (S)

الحصول على http://daniel.lorch.cc/docs/ajax_simple/ajax-cool.html

الحصول على http://daniel.lorch.cc/docs/ajax_simple/validate.php?name=1