Unit Tests for ASP.NET Web Services

توجد بعض الاختلافات بين اختبارات الوحدة لفئات و تلك المتعلقة بخدمات ويب ASP.NET. الأكثر أهمية مشروع يجب أن يحتوي ملف.aspx. توضح هذه المقالة كيفية القيام بذلك هذا الموضوع وكما يصف ما يحدث في مشروع اختبار عندما تقوم بإنشاء اختبار وحدة الخدمة ويب ل ASP.NET.

لمزيد من المعلومات حول كيفية إلى تشغيل اختبارات الأداء على مواقع ويب، راجع قياس الأداء ثم الضغط لتطبيقات ويب. ل المزيد من المعلومات حول اختبارات الوحدة للفئات، راجع كيفية القيام بما يلي: قم بإنشاء و تشغيل اختبار الوحدة.

المتطلبات الأساسية

تأكد من أنك قمت بتثبيت مكونات IIS التالية:

IIS 6 Metabase و توافق تكوين IIS 6

تأكد من أن هناك هو ملف.aspx في مشروع الخاص بك

لوحدة اختبار للتشغيل، يجب أن يكون هناك ملف.aspx في مشروع الذي يحتوي على جهاز الخدمة ويب ل ASP.NET. بدون ملف.aspx، تبدو إنشاء اختبارات الوحدة، ولكن عندما حاولت إلى تشغيلها، ستتلقى خطأ التي تدل على أن طلب ويب بنجاح. ومع ذلك، اختبار لم يتم تشغيل فعلياً.

إلى إضافة ملف.aspx

  1. في من مستكشف الحل، انقر نقراً مزدوجاً فوق مشروع الذي يحتوي على جهاز الخدمة ويب ل ASP.NET انقر فوق إضافةوثم انقر فوق عنصر جديد?.

  2. في صندوق الحوار إضافة عنصر جديد? ، تحت القوالب المثبتة، انقر فوق ويب.

  3. في قائمة قوالب ويب، انقر فوق نموذج ويب، و ثم انقر فوق إضافة.

تتم تمت الإضافة ثلاثة ملفات جديدة إلى مشروع الخاص بك: WebForm1.aspx WebForm1.aspx.cs و WebForm1.aspx.مصمم.cs. لم يكن إلى تعديل أو استخدام هذه الملفات.

ماذا يحدث عندما تقوم بإنشاء اختبار وحدة خدمة ويب ل ASP.NET

يظهر الشكل التالي طريقة اختبار التي هو التي تم إنشاؤها لمشروع الخدمة ويب ASP.NET بسيطة. للحصول على معلومات المزيد عامة التغييرات التي تحدث عندما تقوم بإنشاء اختبار وحدة، راجع Anatomy of a Unit Test.

أسلول اختبار وحدة ASP.NET

أسلول اختبار وحدة ASP.NET

  1. يتم إنشاء الجميع الاختبارات الوحدة ذات سمة [TestMethod ()].

  2. تحدد السمة [() نوع مضيف] المحول مضيف اختبار وحدة ستعمل في. لم يكن إلى تغيير هذه السمة.

  3. تحدد السمة [AspNetDevelopmentServerHost()] الإعدادات المطلوب استخدامها عند الخادم لتطوير ASP.NET هو الالخادم مضيف للاختبار. Th هو السمات هو المضمنة فقط إذا كانت الخدمة ويب ASP.NET الخاص بك هو التي تعمل على النظام الملفات عوضاً I هو العملية. لم يكن إلى تغيير هذه السمة.

  4. تحدد السمة [UrlToاختبار()] عنوان URL الخاص بخدمة ويب ASP.NET للوحدة اختبار.

  5. تبقى هي النص اختبار الأسلوب. ستحتاج غالباً إلى يهيّئ المتغيرات و تحرير Asserts في أسلوب الاختبار.

ملاحظة

لمزيد من المعلومات حول السمات الموضحة هنا، راجع

Microsoft.VisualStudio.TestTools.UnitTesting.

إذا كنت تستخدم ‏‫‏‫Windows Vista، قم بتشغيل ‏‫Visual Studio كـ مسؤول

إذا كنت تقوم بتشغيل Windows Vista، يجب عليك تشغيل Visual Studioadministraإلىr إلى بتشغيل اختبارات الوحدة ASP.NET. إذا قمت بتشغيل Visual Studioكـ لمستخدم عادي، يمكنك إنشاء موقع ويب وإنشاء وتشغيل الاختبارات كـP.NET، ولكن سيتم الاختبارات الفشل. لتشغيل Visual Studioكمسؤول، انقر نقراً مزدوجاً فوق من Microsoft Office 2010 Suite 2010 Studio Visual Basic في قائمة ابدأ ، ثم انقر فوق تشغيل كمسؤول.

إذا قمت بتشغيل IIS كـ مستخدم غير الافتراضية، تأكد من تمكين الجميع الأذونات الضرورية

عند إنشاء إحدى خدمات ويب الخاصة ب ASP.NET، اختيار الموقع أما الالنظام ملف HTTP أو FTP . إذا قمت باختيار "نظام الملفات"، ثم في عملية الخادم تطوير ASP.NET هو المستخدمة. إذا اخترت HTTP أو FTP I هو عملية هو المستخدمة.

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

تشغيل سبيل المثال، إذا كان كـP.NET الخدمة ويب الوصول إلى موارد الموجودة تشغيل الكمبيوتر مثل كـ المجلدات أو الملفات أو databكـe، فيمكنك تشغيلها بحيث تكون الأذونات الخاصة به تشغيل هذه موارد تماما بالقدر الكافي، ولا أكثر.

إذا كانت الخدمة ويب تتطلب إذن لم يكن لدى مستخدم غير الافتراضية، اختبار الوحدة قد فشل. على سبيل المثال، معالجة ASP.NET التي هو تشغيل كما قد يكون مقيداً permهوsions مستخدم غير الافتراضية، ولكن لا يزال قد محاولة توليد الملفات المؤقتة إلى مجلد%WINDIR%\Temp. هذا سوف تفشل إذا لم تسمح الأذونات الافتراضية في%WINDIR%\Temp وصول كاف لعملية إلى توليد هذه الملفات. في هذا حالة، لوحدة اختبار التنفيذ نجاح، قد تضطر إلى منح أذونات أتشغيل عملية تشغيل المجلد%WINDIR%\Temp.

راجع أيضًا:

المرجع

Microsoft.VisualStudio.TestTools.UnitTesting

المبادئ

كيفية القيام بما يلي: قم بإنشاء و تشغيل اختبار الوحدة

Anatomy of a Unit Test