2012-06-06 21 views
9

के साथ काम कर रहे मिंक को पाने के लिए संघर्ष करना मैं इस मार्गदर्शिका का पालन कर रहा हूं (और संगीतकार के माध्यम से सबकुछ स्थापित किया गया है): http://docs.behat.org/cookbook/behat_and_mink.html और बेथ + मिंक काम करने का प्रयास कर रहा हूं लेकिन हर बार जब मैं कोशिश करता हूं और बिन/व्यवहार करता हूं तो मुझे निम्न त्रुटि मिलती है:बेहट

PHP Fatal error: Call to a member function getSession() on a non-object in vendor/behat/mink-extension/src/Behat/MinkExtension/Context/RawMinkContext.php on line 80 

कोड का वह लाइन है:

return $this->getMink()->getSession($name); 
किसी कारण मिंक विशेषता रिक्त है के लिए

तो लेकिन मैं पता नहीं क्यों है।

use Behat\Behat\Context\ClosuredContextInterface, 
    Behat\Behat\Context\TranslatedContextInterface, 
    Behat\Behat\Context\BehatContext, 
    Behat\Behat\Exception\PendingException; 
use Behat\Gherkin\Node\PyStringNode, 
    Behat\Gherkin\Node\TableNode;  

use Behat\MinkExtension\Context\MinkContext; 

/** 
* Features context. 
*/ 
class FeatureContext extends MinkContext 
{ 

} 

और मेरे विक्रेता/Behat/मिंक/behat.yml फ़ाइल है:

मेरे .फ़ीचर फ़ाइल वास्तव में गाइड में से एक के रूप में ही है, FeatureContext वर्ग गाइड से भी है

context: 
    extensions: 
    Behat\MinkExtension\Extension: 
     base_url: 'http://en.wikipedia.org/' 
     goutte: ~ 
     selenium2: ~ 

मैंने अपनी कक्षा को BehatContext का विस्तार करने और फिर उपयोग करने के लिए कॉल करने का प्रयास किया है लेकिन यह मुझे एक ही त्रुटि देता है। बेथ खुद ही काम करता प्रतीत होता है कि मिंक के साथ बस कुछ भी उस घातक त्रुटि का उत्पादन करता है और मुझे नहीं पता कि इसे कैसे ठीक किया जाए।

उत्तर

8

इसका कारण यह है कि आप बल्कि विक्रेता निर्देशिका में फ़ाइल को संपादित करने के your/project/root/behat.yml को vendor/behat/behat/behat.yml.dist फ़ाइल की प्रतिलिपि चाहिए, और default अनुभाग के लिए extesions जोड़ें।

default: 
    extensions: 
    Behat\MinkExtension\Extension: 
     base_url: http://lunch-time/app_dev.php 
     goutte: ~ 
     selenium2: ~ 

    paths: 
    features: features 
    bootstrap: features/bootstrap 

annotations: 
    paths: 
    features: features/annotations 

closures: 
    paths: 
    features: features/closures 
+0

इस त्रुटि के लिए अतिरिक्त फ़िक्स के लिए http://stackoverflow.com/a/28173700/425204 भी देखें – spiritoo

0

मैं ने वही समस्या का सामना करना पड़ रहा था:

और यहाँ यह क्या लग रहा है की तरह है। हमें ऑब्जेक्ट को आरंभ करने के लिए सिम्फनी को बताना होगा।

मेरा डिफ़ॉल्ट> सूट> my_suite के तहत जोड़ने के बाद तय किया गया।

contexts: [Behat\MinkExtension\Context\MinkContext] 

यहां मेरा नया behat.yml कैसा दिखता है।

default: 
    suites: 
     my_suite: 
      type: symfony_bundle 
      bundle: AcmeProjectManagerBundle 
      contexts: [Behat\MinkExtension\Context\MinkContext] 
extensions: 
    Behat\Symfony2Extension: ~ 
    Behat\MinkExtension: 
     base_url: http://en.wikipedia.org 
     goutte: ~ 
     selenium2: ~ 
     sessions: 
      default: 
       symfony2: ~