2013-02-14 15 views
7

में साहि/मिंक/बेहाट के साथ एक फ़ाइल अपलोड नहीं कर सकता है, मैं सिम्फनी 2 एप्लिकेशन के अंदर अपने उपयोगकर्ता इंटरफ़ेस परीक्षणों के लिए मिंक और साही का उपयोग कर रहा हूं। लेकिन वास्तव में मैं साही के साथ एक फाइल अपलोड करने का प्रबंधन नहीं कर सकता।एक सिम्फनी 2 एप्लिकेशन

मेरे साही सर्वर और चल रहा है:

[09:51:33] [email protected]:~/Webdev/sahi/bin$ ./sahi.sh 
-------- 
SAHI_HOME: .. 
SAHI_USERDATA_DIR: ../userdata 
SAHI_EXT_CLASS_PATH: 
-------- 
Sahi properties file = /home/coil/Webdev/sahi/config/sahi.properties 
Sahi user properties file = /home/coil/Webdev/sahi/userdata/config/userdata.properties 
Added shutdown hook. 
>>>> Sahi started. Listening on port: 9999 
>>>> Configure your browser to use this server and port as its proxy 
>>>> Browse any page and CTRL-ALT-DblClick on the page to bring up the Sahi Controller 
----- 
Reading browser types from: /home/coil/Webdev/sahi/userdata/config/browser_types.xml 
----- 

मेरे कदम कार्यान्वयन:

// $element->getXpath() --> (//html/descendant-or-self::*[@id = 'attachment'])[1] 
$element->attachFile($file); 

नोट यहाँ है कि अगर मैं एक फ़ाइल है कि /home/coil/Webdev/sahi/userdata निर्देशिका नहीं है का उपयोग करें, मैं निम्नलिखित त्रुटि मिलती है:

$element->attachFile('toto'); 
error:_setFile2(_byXPath("(//html/descendant-or-self::*[@id = 'attachment'])[1]"), "toto") 
     Error: File not found: toto; Base directory is userdata directory: /home/coil/Webdev/sahi/userdata 
     Error: File not found: toto; Base directory is userdata directory: /home/coil/Webdev/sahi/userdata 
     at Sahi._setFile (http://dev.project.com/_s_/spr/concat.js:1398:12) 
     at Sahi._setFile2 (http://dev.project.com/_s_/spr/concat.js:1367:7) 
     at eval (eval at <anonymous> (http://dev.project.com/_s_/spr/concat.js:3480:14), <anonymous>:1:7) 
     at Sahi.ex (http://dev.project.com/_s_/spr/concat.js:3480:9) 
     at <anonymous>:1:11 
     <a href='/_s_/dyn/Log_getBrowserScript?href=null&n=-1'><b>Click for browser script</b></a> 

तो, साही फ़ाइल को "ढूंढ" सकती है क्योंकि यह वैध और मौजूदा फ़ाइल के साथ कोई त्रुटि नहीं उठाती है। लेकिन जब फॉर्म सबमिट किया जाता है, तो फ़ाइल कभी साई प्रॉक्सी द्वारा अपलोड नहीं की जाती है।

अन्य चेक:

  • मैं ग्राहक के पक्ष एचटीएमएल 5 और जावास्क्रिप्ट सत्यापन हटाया यकीन है कि वहाँ कोई पक्ष प्रभाव है किया जाना है।
  • सभी मेरे दूसरे साही परीक्षण ठीक कर रहे हैं, केवल एक अपलोड की मदद से 3 उत्तीर्ण नहीं होते हैं
  • प्रॉक्सी मेरी परीक्षण ब्राउज़र
  • मैं इस समस्या
  • ही बिना ब्राउज़र में साही नियंत्रक को खोल सकते हैं में सेट किया गया है MaxOsX और Ubuntu
  • हर बार जब मैं एक अपलोड परीक्षण चलाने पर बात नहीं, मैंने sahi_11a83f8806be8046fc0aaa80eac076110b95__fr-fr-2-0.bdic

क्या वास्तव में अजीब है की तरह नामित/userdata/अस्थायी/डाउनलोड में एक नई प्रविष्टि मिल गया है, यह है कि मुझे लगता है कि यकीन है उन परीक्षणों को कुछ समय पहले पारित किया गया था, इसलिए मेरे आवेदन या कॉन्फ़िगरेशन में कुछ बदलना चाहिए जो साही फ़ाइल अपलोड को तोड़ देता है लेकिन मुझे वह नहीं मिल रहा है। और साही कंसोल में पहले मेरे पास अपलोड की गई फ़ाइलों के बारे में लॉग था, अब कोई लॉग नहीं है।

+0

क्या आप "dev" या "उत्पादन" में एप्लिकेशन चला रहे हैं वातावरण? यही कारण है कि आपको कोई लॉग दिखाई नहीं दे रहा है? – tftd

+0

यह 'परीक्षण' वातावरण का उपयोग करता है। लेकिन मैं साहिी लॉग के बारे में बात कर रहा हूं कि आवेदन लॉग नहीं। – COil

उत्तर

1

क्या यूआरएल है जिस पर फ़ॉर्म को वेब पेज के यूआरएल से अलग किया गया है? _setFile और _setFile2 एक तीसरा पैरामीटर लें जिसे एक्शन यूआरएल (यूआरएल को फाइल को साई प्रॉक्सी द्वारा संलग्न किया जाना चाहिए) http://sahi.co.in/w/_setFile

+0

फ़ॉर्म यूआरएल के रूप में एक ही यूआरएल में फॉर्म पोस्ट: '

' – COil

+0

मैंने साहि के अंतिम संस्करण पर सफलता के बिना' _setFile2' के साथ भी प्रयास किया। – COil

2

पूर्ण सिस्टम पथ का उपयोग करें जिसमें साहिी सर्वर का उपयोग है।

+0

मैंने बिना सफलता के '/ tmp/file.doc' के साथ प्रयास किया। मुझे सच में लगता है कि कुछ प्रॉक्सी स्तर पर अच्छी तरह से कॉन्फ़िगर नहीं किया गया है। – COil

+0

हो सकता है। लेकिन मुझे यकीन है कि अपलोडिंग काम के रूप में SahiDriver परीक्षण सूट पास करता है। और इसमें फाइल अपलोड टेस्ट केस है:/ – everzet

+0

यदि आप केवल अपलोड टेस्ट चलाते हैं, तो क्या आपके पास '/ bin/sahi.sh' कंसोल में एक लॉग है जो दिखा रहा है कि कौन सी फाइल अपलोड की जा रही है? – COil