ऐसा अक्सर तब होता है, जब किसी खास टेस्ट हार्नेस (शायद आईडीई) या लगातार बिल्ड सिस्टम (जैसे, Jenkins) का इस्तेमाल करके ChromeDriver या Chrome को चलाया जाता है.
उसी Chrome बाइनरी को लॉन्च करने की कोशिश करें जिसका इस्तेमाल आपका टेस्ट, सामान्य उपयोगकर्ता कमांड प्रॉम्प्ट से करता है. पुष्टि करें कि chromedriver.log
फ़ाइल में, Chrome का कौनसा बाइनरी इस्तेमाल किया जा रहा है. अगर आपने Chrome को खास कमांड लाइन स्विच या आर्ग्युमेंट दिए हैं, तो उन्हें भी शामिल करना न भूलें. अगर Chrome सही तरीके से शुरू नहीं होता है, तो आपको Chrome के इंस्टॉलेशन को ठीक करना होगा. इसे फिर से इंस्टॉल करके देखें.
मान लें कि आपके पास कमांड प्रॉम्प्ट से Chrome चलाने का विकल्प है. अगला चरण यह देखना है कि टेस्टिंग एनवायरमेंट में टेस्ट चलाते समय, क्या वही समस्या आती है. आम तौर पर, टेस्ट बाइनरी या स्क्रिप्ट को सीधे किसी सामान्य उपयोगकर्ता के कमांड प्रॉम्प्ट से लॉन्च किया जाता है. पुष्टि करें कि WebDriver या ChromeDriver का इस्तेमाल किए बिना, सीधे अपने टेस्ट से Chrome को लॉन्च किया जा सकता है. उदाहरण के लिए, Java में, सीधे Chrome बाइनरी को शुरू करने के लिए, ProcessBuilder API का इस्तेमाल किया जा सकता है. अगर टेस्टिंग एनवायरमेंट में भी आपके टेस्ट में वही समस्या दिखती है, तो समस्या को दोहराने के तरीके के साथ नई समस्या दर्ज करें.
अगर समस्या सिर्फ़ टेस्टिंग के लिए बनाए गए खास एनवायरमेंट में आ रही है, तो:
Chrome के अन्य इंस्टॉलर का इस्तेमाल करें. इससे, सभी उपयोगकर्ताओं के लिए Chrome इंस्टॉल हो जाता है. अगर Selenium को बैकग्राउंड सेवा के तौर पर चलाया जा रहा है, तो इससे अक्सर समस्याएं ठीक हो जाती हैं.
Chrome के स्टार्टअप के दौरान क्रैश होने की एक आम वजह यह है कि Chrome को Linux पर रूट उपयोगकर्ता (एडमिन) के तौर पर चलाया जा रहा हो. WebDriver सेशन बनाते समय --no-sandbox
फ़्लैग पास करके, इस समस्या को हल किया जा सकता है. हालांकि, ऐसा कॉन्फ़िगरेशन काम नहीं करता और इसका सुझाव नहीं दिया जाता. इसके बजाय, Chrome को सामान्य उपयोगकर्ता के तौर पर चलाने के लिए, अपने एनवायरमेंट को कॉन्फ़िगर करें.
अगर इनमें से कोई भी तरीका काम नहीं करता है, तो समस्या को दोहराने के तरीके के साथ नई समस्या दर्ज करें. अगर आपकी समस्या सिर्फ़ किसी खास और असामान्य टेस्टिंग एनवायरमेंट में आती है, तो ध्यान रखें कि ChromeDriver के डेवलपर आपकी समस्या की जांच करने और उसे ठीक करने का विकल्प न चुनें.