Protractor: يتجاوز stdout maxBuffer webdriver-manager

تم إنشاؤها على ٧ مايو ٢٠١٤  ·  3تعليقات  ·  مصدر: angular/protractor

اهلا جميعا

أنا أستخدم منقلة ومدير ويب ابدأ في مهمة نخر واحدة ، لأنه في ci لا يمكنني استخدام نافذتين طرفيتين.

المواصفات: Windows 7 ، node v0.10.26 ، Protractor 0.22.0 ، grunt منقلة runner (الذي يستخدم منقلة 0.22.0)

أنا أستخدم grunt المتزامنة مع مهمتين - بدء تشغيل برنامج webdriver-manager ومنقلة. ينجحون دائمًا بإجراء الاختبارات واحدًا تلو الآخر. إجراء جميع الاختبارات ،
نجحت الاختبارات الأولى ، ولكن في الاختبار الرابع أو الخامس فشلت مع هذه الرسالة ..... تحذير: تجاوز stdout maxBuffer. استخدم - القوة للمتابعة.
يبدو أن حد المخزن المؤقت لأمر النشر قد تجاوز ويتم إنهاء المهمة الفرعية.

لقد قمت بحل هذه المشكلة عن طريق تغيير أمر webdriver-manager spawn.

في Webdriver-manager لقد غيرت
إرجاع childProcess.spawn (winCommand ، finalArgs ،
{stdio: 'وراثة'}) ؛

ل:
إرجاع childProcess.spawn (winCommand ، finalArgs ،
{stdio: 'ignore'}) ؛

هل هناك أي حل آخر لـ webdriver-manager لا يتجاوز المخزن المؤقت ، أو يمكن أن يكون قابلاً للتكوين؟ هل يمكن تضمين ميزة تعطيل تسجيل النشر في إصدار مستقبلي من المنقلة.

التعليق الأكثر فائدة

عذرا على البطئ في الرد. أنا متأكد من أن هذا الخطأ يرجع إلى أن grunt shell تستخدم أمر Node child_process.exec . هذا يسمح بخيار maxBuffer مخصص ، والذي يجب عليك زيادته. يمكنك القيام بذلك مثل:

grunt.initConfig({
    shell: {
        foo: {
            command: 'webdriver-manager start',
            options: {
                stderr: false,
                execOptions: {
                    maxBuffer: 400*1024 // or whatever other large value you want
                }
            }
        }
    }
});

الختام لأن هذه مشكلة نخر.

ال 3 كومينتر

عذرا على البطئ في الرد. أشعر أن هذه مشكلة تتعلق بالنخر - كل ما يفعله webdriver-manager هو إعادة توجيه الإخراج. لست على دراية خاصة بكيفية تعامل الناخر مع الإخراج ، ولكن ربما يمكنك إخبار الناخر بتجاهل stdout؟

مرحبا جولي
مع عدم نجاحي تمكنت من تجاهل stdout من عملية الطفل في webdriver-manager. على الرغم من عدم ظهور أي سجلات في إخراج مهمة grunt ، إلا أنه بعد بعض الاختبارات ظهرت رسالة الخطأ نفسها "تجاوز stdout maxBuffer". لقد تمكنت فقط من التحايل على المشكلة من خلال تشغيل مهمة استبدال grunt لتغيير stdio في مدير webdriver.

عذرا على البطئ في الرد. أنا متأكد من أن هذا الخطأ يرجع إلى أن grunt shell تستخدم أمر Node child_process.exec . هذا يسمح بخيار maxBuffer مخصص ، والذي يجب عليك زيادته. يمكنك القيام بذلك مثل:

grunt.initConfig({
    shell: {
        foo: {
            command: 'webdriver-manager start',
            options: {
                stderr: false,
                execOptions: {
                    maxBuffer: 400*1024 // or whatever other large value you want
                }
            }
        }
    }
});

الختام لأن هذه مشكلة نخر.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات