2014-09-03 11 views
6

मैं अपने स्वचालित फ्रंट एंड टेस्ट के लिए ककड़ी और कैपिबारा का उपयोग कर रहा हूं।विभिन्न वातावरणों पर ककड़ी परीक्षण चलाना

मेरे पास दो वातावरण हैं जिन्हें मैं अपने परीक्षणों को चलाने के लिए चाहता हूं। एक एक स्टेजिंग वातावरण है, और दूसरा उत्पादन वातावरण है।

वर्तमान में, मेरे पास सीधे परीक्षण स्टेजिंग तक पहुंचने के लिए मेरे परीक्षण लिखे गए हैं।

visit('https://staging.somewhere.com') 

मैं उत्पादन में परीक्षणों का पुनः उपयोग करना चाहता हूं (https://production.somewhere.com)।

यह मेरे कदम परिभाषाओं

visit(domain) 

में एक चर में URL की दुकान और एक वातावरण चर कहा प्रपत्र आदेश पंक्ति का उपयोग करके डोमेन को परिभाषित करना संभव होगा?

$> bundle exec cucumber features DOMAIN=staging 

अगर मैं अपने स्टेजिंग वातावरण के लिए परीक्षण इंगित करना चाहते हैं, या

$> bundle exec cucumber features DOMAIN=production 

अगर मैं इसे उत्पादन में चलाना चाहते हैं की तरह?

मैं इसे स्थापित करने के बारे में कैसे जा सकता हूं? मैं रूबी के लिए बिल्कुल नया हूं और मैं सीधे आगे की जानकारी के लिए फ़ोरम खोज रहा हूं लेकिन कोई भी नहीं मिला। अगर मैं अधिक जानकारी प्रदान कर सकता हूं तो मुझे बताएं। आपकी सहायताके लिए धन्यवाद!

उत्तर

6

परियोजना की कॉन्फ़िग फ़ाइल में, एक config.yml फ़ाइल

--- 
staging: 
    :url: https://staging.somewhere.com 

production: 
    :url: https://production.somewhere.com 

YML फ़ाइल में तब अतिरिक्त पेट के हैश कुंजी प्रतीक के रूप में कहा जा करने की अनुमति देता पैदा करते हैं।

अपने समर्थन/env.rb फ़ाइल में, निम्न

require 'yaml'  

ENV['TEST_ENV'] ||= 'staging' 
project_root = File.expand_path('../..', __FILE__) 
$BASE_URL = YAML.load_file(project_root + "/config/config.yml")[ENV['TEST_ENV']][:url] 

इस स्टेजिंग वातावरण जब तक आप TEST_ENV ओवरराइड करने के लिए लागू हो जाएगी जोड़ें। फिर, अपने कदम या हुक से, आप कॉल कर सकते हैं:

visit($BASE_URL) 

या आप की आवश्यकता हो सकती:/

visit "#{$BASE_URL}" 

यह आप उपयोग करना

bundle exec cucumber features TEST_ENV=production 
+0

धन्यवाद अनुमति देगा! बहुत विस्तृत प्रतिक्रिया। मैंने कोशिश की और यह काम किया। – RaymundS

1

मैं cucumber ज्यादा प्रयोग नहीं करते, लेकिन आप में अपने परीक्षण ENV['DOMAIN'] || YOUR_DEFAULT_DOMAIN का उपयोग इस चर का उपयोग करने के तो

bundle exec cucumber features DOMAIN=staging 

ऐसा करने में सक्षम होना चाहिए। YOUR_DEFAULT_DOMAIN शायद आपके परीक्षण पर्यावरण होना चाहिए।

See Here

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