2012-01-13 13 views
5

क्या किसी को भी वेबैप के परीक्षण को स्वचालित करने के लिए सेलेनियम का उपयोग करने का अनुभव है जो उपयोगकर्ता लॉगिन के लिए फेसबुक कनेक्ट का उपयोग करता है? कोई सुझाव या विधियां जो आप अनुशंसा करते हैं?सेलेनियम का उपयोग कर एक फेसबुक कनेक्ट एप्लिकेशन का परीक्षण?

+0

वहाँ भी फेसबुक द्वारा एक पोस्ट था कुछ समय पहले इंजीनियर, पोस्ट में लिंक हालांकि पुरानी हो चुकी है, और यह watir का उल्लेख है। http: //developers.facebook।कॉम/ब्लॉग/पोस्ट/305/ – David

+0

अफसोस की बात है कि एफबी ब्लॉग पोस्ट अब चला गया है। लेकिन परीक्षण के लिए यह एपीआई उपयोग की जा सकती है: https://developers.facebook.com/docs/test_users/ – David

उत्तर

1

निर्भर करता है कि आप क्या करना चाहते हैं?

  1. क्या आप वास्तविक वास्तविक फेसबुक उपयोगकर्ता (जो फेसबुक द्वारा सत्यापित फ़ोन है) का उपयोग कर रहे हैं?

    सुरक्षित और सबसे विश्वसनीय, लेकिन बहुत मुश्किल (असंभव) "वास्तविक" उपयोगकर्ताओं को इकट्ठा करने के लिए (एफबी द्वारा सत्यापित फ़ोन)।

    उपयोगकर्ता/कनेक्शन विवरण, जैसे शिक्षा इतिहास, कार्य इतिहास, नाम, आयु इत्यादि के परिभाषित पहलुओं के संदर्भ में (विशेष रूप से यदि आपके पास सभी "वास्तविक" फेसबुक खातों तक पहुंच नहीं है)।

  2. नकली फेसबुक उपयोगकर्ता ऐप का परीक्षण करने के लिए बनाए गए (एफबी द्वारा सत्यापित नहीं)?

    शायद सबसे आसान सेटअप करने के लिए, क्योंकि सभी नकली उपयोगकर्ता हैं, कोई फ़ोन सत्यापन (एफबी के साथ) आवश्यक है। लेकिन सभी उपयोगकर्ताओं के लिए ईमेल आईडी बनाने की आवश्यकता होगी।

    भले ही कनेक्शन जानकारी आपकी पसंद के हिसाब से बनाई जा सके। मुख्य दोषों में से एक (और यह मेरे साथ हुआ है), अगर एफबी का पता चलता है कि उपयोगकर्ता कानूनी नहीं है, तो एफबी सभी खातों को जमा कर देगा। जो आपके सभी एफबी उपयोगकर्ता विशिष्ट स्वचालित परीक्षणों को आंखों के झपकी में सभी बेकार बना देगा। और आप ऐसा नहीं कर सकते हैं (जब तक कि आप उन खातों को सत्यापित करने के लिए एक नया फोन कनेक्शन प्राप्त करने की योजना नहीं बनाते, कोई भी Google नंबर, कोई स्काइप नहीं, कोई आईपी आधारित फ़ोन अनुमति नहीं देता है। एफबी उस के साथ बहुत सख्त है)। इसके अलावा एक नंबर केवल 1 खाता अधिकृत कर सकता है।

  3. क्या आप एफबी परीक्षण उपयोगकर्ताओं को बनाने के लिए फेसबुक एपीआई का उपयोग करेंगे?

    शायद फेसबुक का उपयोग करने के लिए आदर्श तरीका (एफबी के अनुसार) आपके ऐप का परीक्षण करने के लिए कनेक्ट करें। इसका उपयोग कैसे करें इस पर दस्तावेज़ के लिए here पर क्लिक करें।

    यह सीधे आगे प्रतीत होता है, लेकिन इसकी गिरावट (प्रमुख) हैं। बहुत ही अविश्वसनीय, एपीआई समय के 10-20% त्रुटि देता है, और दूसरी बार चरम रूप से धीमा करता है। एक बार गलत जगह पर एफबी परीक्षण उपयोगकर्ता के पासवर्ड को पुनः प्राप्त करने का कोई तरीका नहीं है। कनेक्शन जानकारी आसानी से अनुकूलित नहीं किया जा सकता है। यह सुनिश्चित करने के बिना कि यह हर बार काम करता है, इसे स्थापित करने के लिए पर्याप्त प्रयास करने की आवश्यकता है।

मैं व्यक्तिगत रूप से दूसरा विकल्प का विकल्प चुना है। फेसबुक कई आईपीएस में समांतर लॉग इन के आधार पर उपयोगकर्ता की वैधता (मुझे लगता है) का पता लगाता है। मेरे पास सेलेनियम आरसी विभिन्न सर्वरों पर चल रहा है, जो इन परीक्षणों को समानांतर में चलाते हैं, जो संभवतः लाल झंडा उठा सकते थे। इसलिए मैं इन स्क्रिप्ट को एक और संगठित तरीके से शेड्यूल करता हूं, ताकि लॉगिन ओवरलैप से बच सकें।

मुझे उम्मीद है कि इस लंबी व्याख्या में आपको अपना जवाब मिल जाएगा। :)


पर्ल कार्यान्वयन के लिए -

$sel->start(); 
$sel->open_ok("$URL"); 
$sel->set_speed("500"); 
$sel->click_ok("//img[\@alt='Facebook']",'User clicks on Facebook Login'); 
$sel->wait_for_pop_up_ok("", "30000",'Facebook Login Popup Loading'); 
$sel->select_pop_up("null");  
$sel->type_ok("email", "email\@email.com",'User enters Facebook credentials - Username'); 
$sel->type_ok("pass", "password",'User enters Facebook credentials - Password'); 
$sel->key_press("pass", "\\13",'User returns Facebook Login credentials'); 
$sel->select_window("null"); 
+1

क्या वास्तव में एक select_pop_up() विधि है? या केवल पर्ल के लिए? मैं इसे जावा एपीआई में नहीं देखता (http://release.seleniumhq.org/selenium-remote-control/0.9.2/doc/java/) – David

संबंधित मुद्दे