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

يتوفر تسجيل تحميل الملف لمتصفح Chrome ومتصفحات الجوال فقط.

حدود تحميل الملفات

تدعم أداة البرمجة النصية EveryStep تسجيل تحميل ملف إلى عنوان URL خارجي. يمكنك تسجيل تحميل ما يصل إلى 100 ميغابايت في المجموع ضمن برنامج نصي EveryStep لاختبار التحميل وما يصل إلى 20 ميغابايت لمراقبة البرامج النصية.

على سبيل المثال، يمكنك تسجيل تحميل أربعة ملفات بحجم 25 ميغابايت أو ملف واحد بحجم 100 ميغابايت لاختبار التحميل. أو يمكنك تسجيل تحميل ملفين بحجم ملف 10 ميغابايت لكل منهما أو ملف واحد بحجم 20 ميغابايت لمراقبة أداء الويب.

كيف يعمل

لا يحتوي Dotcom-Monitor على مساحة تخزين متوفرة محليا. لمحاكاة عملية تحميل ملف، يحتاج النظام إلى تنزيل الملف إلى البرنامج النصي من عنوان URL عام قبل تنفيذ خطوة التحميل. وبالتالي ، أولا ، تحتاج إلى توفير ملف اختبار سيتم استخدامه في عملية التحميل بواسطة Dotcom-Monitor. نتيجة لذلك ، سيقوم Dotcom-Monitor بتنزيل الملف من عنوان URL المقدم إلى التخزين السحابي للنظام واستخدامه في عملية التحميل في كل مرة يتم فيها تنفيذ البرنامج النصي. هناك طريقتان لتوفير ملف اختبار إلى Dotcom-Monitor.

تنزيل الملف من عنوان URL الخارجي

لاستخدام ملف من عنوان URL خارجي، ضع ملف اختبار يصل حجمه إلى 100 ميجابايت (حتى 20 ميغابايت لمراقبة البرامج النصية) إلى عنوان URL يمكن الوصول إليه بشكل عام مثل حاوية Amazon S3 أو تخزين Azure أو خدمات CDN. ثم قم بتسجيل خطوة تحميل الملف في مسجل EveryStep. أثناء تسجيل الخطوة ، ستتم مطالبتك بتوفير الرابط إلى ملف الاختبار. سيقوم النظام بتنزيل الملف واستخدامه في عملية التحميل.

تسجيل تنزيل ملف داخل البرنامج النصي

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

أفضل الممارسات

يقوم Dotcom-Monitor بتنفيذ جميع الخطوات والإجراءات في البرنامج النصي دون تأخير بشكل افتراضي. ومع ذلك، عادة ما يستغرق تحميل ملف إلى مورد ويب بعض الوقت. في هذه الحالة ، لمحاكاة التأخير والانتظار حتى ينفذ النظام خطوة التحميل ، يوصى بإضافة سطر التأخير إلى البرنامج النصي مباشرة بعد خطوة التحميل.

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

تسجيل تحميل الملف من عنوان URL الخارجي

تحقق من خطوات إعداد تحميل الملف أدناه:

  1. نزل ملفا تجريبيا يصل حجمه إلى 100 ميغابايت إلى عنوان URL يمكن الوصول إليه بشكل عام.
  2. سجل البرنامج النصي حتى النقطة التي تحتاجها لتحميل الملف.
  3. انقر فوق الزر المقابل في الصفحة المستهدفة لتحميل الملف.
  4. في نافذة تحميل الملفات ، قم بتوفير رابط خارجي للملف الذي تريد تحميله. سيتم تنزيل الملف من الرابط الخارجي المقدم إلى التخزين السحابي Dotcom-Monitor. بمجرد تنزيله ، سيتم إدراج اسم الملف في نافذة تحميل الملفات . حدد خانة الاختيار الملف وانقر فوق موافق. نتيجة لذلك ، ستتم إضافة سطر OpenFileDialogHandler إلى البرنامج النصي تلقائيا.

    إذا تم تسجيل تنزيل الملف في الخطوة السابقة من البرنامج النصي، فحدد اسم الملف على الفور في نافذة تحميل الملفات .

  5. أضف التأخير مباشرة بعد خطوة التحميل.
  6. أضف الكلمة الرئيسية أو التحقق من صحة الصورة إلى البرنامج النصي.
  7. إذا لزم الأمر ، تابع التسجيل ؛ وإيقاف عملية التسجيل عندما تكون جاهزة.

ابحث عن مثال البرنامج النصي لتحميل الملف المسجل في أداة البرمجة النصية EveryStep أدناه. يحتوي البرنامج النصي على أمثلة لتحميل ملف مخزن محليا وملف من عنوان URL الخارجي.

// script_version=3.0; everystep_version=4.0.7706.9249; date=2/10/2021; Chrome=83.0.4103.61
Tabs.SetSize (1768, 419);
DMBrowser tab0 = null;
Step (1, "Download & Generate Test Files - https://fastest.fish/test-files");
tab0 = Tabs.NewTab ();
tab0.GoTo ("https://fastest.fish/test-files");
tab0.Link ("//A[normalize-space()=\"5MB\"]", "//A[normalize-space(text())=\"5MB\"]", "//A[normalize-space()=\"10MB\"]/preceding-sibling::A[1]").Click ();
//File Download to the system storage  
Step (2, "Download & Generate Test Files - http://ipv4.download.thinkbroadband.com/5MB.zip");
tab0.Downloading ("5MB.zip", "http://ipv4.download.thinkbroadband.com/5MB.zip");
tab0.Para ("//P[normalize-space()=\"These test files will be downloaded in full over your network connection from high speed servers. These files can be used to test your network download speed.\"]/preceding-sibling::P[1]", "//P[normalize-space(text())=\"These test files will be downloaded in full over your network connection from high speed servers. These files can be used to test your network download speed.\"]/preceding-sibling::P[1]", "/HTML/BODY/DIV/DIV/P[1]").Click ();
//File Upload using the file from the system storage
Step (3, "Gofile - https://gofile.io/uploadFiles");
tab0.GoTo ("https://gofile.io/uploadFiles");
OpenFileDialogHandler (OpenFileDialogButton.Ok, new string[1] {"5MB.zip"});
tab0.Button ("//BUTTON[normalize-space()=\"Click here\"]", "//BUTTON[normalize-space(text())=\"Click here\"]", "//BUTTON[@ID=\"dropZoneBtnSelect\"]").Click ();
tab0.Button ("//BUTTON[normalize-space()=\"Upload\"]", "//BUTTON[normalize-space(text())=\"Upload\"]", "//BUTTON[@ID=\"uploadFiles-btnUpload\"]").Click ();
Delay ("40sec".ToDuration ());
tab0.KeywordAssert ("successfully uploaded");
//File Upload from the external URL
tab0.Link ("//P[normalize-space()=\"Upload Files\"]/..", "//LI[@ID=\"li-uploadFiles\"]//A", "//LI[@ID=\"li-api\"]/preceding-sibling::LI[1]//A").Click ();
tab0.Download ("Q3UTw.htm", "https://dropmefiles.com/Q3UTw");
OpenFileDialogHandler (OpenFileDialogButton.Ok, new string[1] {"Q3UTR.htm"});
tab0.Button ("//BUTTON[normalize-space()=\"Click here\"]", "//BUTTON[normalize-space(text())=\"Click here\"]", "//BUTTON[@ID=\"dropZoneBtnSelect\"]").Click ();
tab0.Button ("//BUTTON[normalize-space()=\"Upload\"]", "//BUTTON[normalize-space(text())=\"Upload\"]", "//BUTTON[@ID=\"uploadFiles-btnUpload\"]").Click ();
Delay ("40sec".ToDuration ());
tab0.KeywordAssert ("successfully uploaded");