أتمتة متصفح الويب Safari باستخدام C# على نظام التشغيل Windows

StackOverflow https://stackoverflow.com/questions/60609

سؤال

تساءلت عما إذا كان أي شخص قد نجح في إدارة متصفح الويب Safari أو يعرف كيفية تشغيله تلقائيًا على نظام التشغيل Windows.

من الناحية المثالية، أود أتمتة Safari بطريقة مماثلة للاستخدام mshtml لبرنامج إنترنت إكسبلورر.سيكون الفشل في استخدام طريقة لإدخال JavaScript في العملية الجارية أمرًا جيدًا أيضًا.لقد استخدمت طريقة حقن JavaScript لأتمتة Firefox عبر ملف com.jssh توصيل في.

إنني أتطلع إلى أتمتة المتصفح باستخدام .Net لتحسين إطار عمل التشغيل الآلي الحالي واتين

يحرر:على الرغم من أنني أعتقد أن السيلينيوم قد يكون خيارًا رائعًا لأتمتة Safari في سيناريوهات معينة، إلا أنني أرغب في استخدام حل لا يتطلب تثبيت برنامج على الخادم، على سبيل المثال.Selenium Core أو خادم وكيل وسيط في حالة جهاز التحكم عن بعد Selenium.

تحديث:23-03-2009:على الرغم من أنني لم أجد حتى الآن طريقة لأتمتة Safari، فقد وجدت طريقة لأتمتة Webkit داخل Chrome.إذا قمت بتشغيل Chrome باستخدام --remote-shell-port=9999 مفاتيح سطر الأوامر (المرجع: http://www.ericdlarson.com/misc/chrome_command_line_flags.html) يمكنك إرسال جافا سكريبت إلى المتصفح.

بمجرد الاتصال برؤية التصحيح عن بعد

  • يرسل تصحيح () لإرفاقه بعلامة التبويب الحالية
  • أرسل أي أمر جافا سكريبت باستخدام مطبعة, ، أي.طباعة document.window.location.href

لقد استخدمنا هذه الطريقة للإضافة دعم كروم لـ WatiN

هل كانت مفيدة؟

المحلول

يمكنك التحقق من مشاركتي هنا حيث أستخدم الطريقة الموضحة أعلاه لأتمتة Chrome في C#

http://markcz.wordpress.com/2012/02/18/automating-chrome-browser-from-csharp/

مارتن

نصائح أخرى

لست متأكدا إذا كان هذا يساعد، ولكن الرجال في ArtOfTest لقد أضافوا دعم Safari إلى إطار عمل التشغيل الآلي المستند إلى .Net WebAii.ربما يمكنك معرفة ما يفعلونه.

السيلينيوم لقد كان مفيدًا جدًا بالنسبة لي لاختبار التوافق.

واتين هنا http://watinandmore.blogspot.com/2010/01/browserattachto-and-iattachto.html يتيح لك أتمتة IE وFF.إنه مفتوح المصدر، لذا يمكنك إلقاء نظرة على كيفية القيام بذلك.

ربما يمكنك تكييفه مع احتياجاتك؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top