2012-10-31 37 views
5

हम एक अलग परीक्षण स्वचालन टीम केवल watir + ककड़ी कार्यात्मक परीक्षण मामलों को स्वचालित करने के लिए जिम्मेदार है। उनका कोड बेस उन रेल ऐप से जुड़ा नहीं है जो अन्य डेवलपर काम कर रहे हैं, लेकिन अलग रखा गया है। हमने अभी तक कई परीक्षण मामलों को स्वचालित कर दिया है, और अब हमारे पास क्या समस्या है, कुछ (वॉटर/ककड़ी चश्मे) परीक्षण के मामलों में कुछ डेटा को डीबी में प्रक्षेपित करने की आवश्यकता होती है, इसलिए यह (टेस्टकेस) केवल समस्या पर केंद्रित होना चाहिए, न कि किसी भी डेटा को बनाने के लिए खुद की आवश्यकता है।डेटा कारखाने, watir

उदाहरण के लिए, कहते हैं कि अगर यह रेटिंग एक पद के लिए काम कर रहा है कि क्या जांच करने के लिए है, यह एक के बाद वस्तु पहले ही से देखना चाहिए की आवश्यकता है और यह सिर्फ रेटिंग की जाँच करता है। और 1 पोस्ट ऑब्जेक्ट नहीं बना रहा और फिर इसकी रेटिंग जांच रहा है।

क्या सबसे अच्छा दृष्टिकोण यहाँ हैं? जैसे कि रेलवे इकाई परीक्षण के लिए हमारे पास फिक्स्चर और फैक्ट्री-गर्ल है, ककड़ी चश्मे के लिए क्या है? या क्या हम केवल सुविधाओं का उपयोग कर सकते हैं? इन परीक्षकों के पास मौजूद सभी मॉडलों का विचार नहीं हो सकता है, क्या वे रेल-मॉडल इंटरफेस को कॉल करके फिक्स्चर का उपयोग करने के लिए उनके बारे में जानते हैं।

मेरा विचार था, जब हम सुविधा फ़ाइल लिखते हैं, यह बात या किसी मॉडल जो मेटा सामान लग रहा है के बारे में बात नहीं करना चाहिए। वॉटर/चश्मा परीक्षण के मामलों को केवल "वेब-एप्लिकेशन"/ब्राउज़र के बारे में पता होना चाहिए, केवल इंटरफ़ेस के रूप में एप्लिकेशन से बात करने/निपटने के लिए। उन्हें किसी अन्य इंटरफेस (स्थिरता/मॉडल) नहीं पता होना चाहिए। इसलिए उन्हें एक ही इंटरफेस का उपयोग करके अपने स्वयं के डेटा बनाना चाहिए।

दोबारा, मैं क्या जानना चाहता हूं, क्या कोई भी रूबी lib/code है, तालिका नाम, कॉलम नाम, और मान (सभी फिक्स्चर yml जैसे) डीबी पैरामीटर के साथ है। रेलवे पर्यावरण के संदर्भ के बिना, यह उन्हें डीबी में डालेगा। और इसलिए टेस्टर्स जिनके पास रेलवे वेब डेवलपर्स से अलग पर्यावरण है, वे स्वयं पर काम करने में सक्षम होंगे। रेल फिक्स्चर, या कारखाने की लड़कियां रेल के साथ अच्छी तरह से मिलती-जुलती लगती हैं। या मैं गलत हूँ?

+0

लेकिन कौन कहता है फैक्टरी गर्ल केवल आरएसपीसी के लिए है? यह भी खीरे के साथ काम करता है। http://collectiveidea.com/blog/archives/2010/09/09/practical-cucumber-factory-girl-steps/ – Chirantan

उत्तर

1

चिरंतन जैसा कहा था कि आप ककड़ी के साथ फैक्टरी महिला इस्तेमाल कर सकते हैं। परीक्षण इकाई या आरएसपीईसी में अपने कारखानों की आवश्यकता के रूप में, आप ककड़ी की env.rb फ़ाइल या किसी भी कस्टम कॉन्फ़िगरेशन फ़ाइल में ऐसा कर सकते हैं।

http://robots.thoughtbot.com/post/284805810/gimme-three-steps

http://www.claytonlz.com/2010/03/zero-to-tested-with-cucumber-and-factory-girl/

http://www.andhapp.com/blog/2009/11/07/using-factory_girl-with-cucumber/

+0

अगर मैं, तो क्यों नहीं जुड़नार फैक्टरी महिला उपयोग कर सकते हैं? सही? –

+1

हां आप फिक्स्चर का भी उपयोग कर सकते हैं। – hindenbug

-1

ककड़ी का उपयोग कर, यह देखते हुए बयान परीक्षण स्थिति सेट:

Given I have a basic user with a password 

और जब बयान परीक्षण चलाता है:

When the user logs in 

और फिर बयान चेकों परीक्षण परिणाम

Then they see the basic menu 

आंकड़ों को देखते हुए बयान में लोड हो जाता है।

+0

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