คำถามติดแท็ก debugging

การดีบักเป็นกระบวนการที่มีระเบียบวิธีในการค้นหาและแก้ไขข้อบกพร่องในโปรแกรมคอมพิวเตอร์ ** หมายเหตุสำคัญ: ** แท็กนี้มีไว้สำหรับคำถามเกี่ยวกับเทคนิคการดีบักหรือขั้นตอนการดีบักเท่านั้นไม่ใช่เพื่อขอความช่วยเหลือในการดีบักรหัสของคุณ

11
ฉันจะทำให้ console.log แสดงสถานะปัจจุบันของวัตถุได้อย่างไร
ใน Safari ที่ไม่มีส่วนเสริม (และเบราว์เซอร์อื่น ๆ ส่วนใหญ่) console.logจะแสดงวัตถุที่สถานะสุดท้ายของการดำเนินการไม่ใช่ที่สถานะเมื่อconsole.logถูกเรียก ฉันต้องโคลนวัตถุเพื่อเอาท์พุทผ่านconsole.logเพื่อให้ได้สถานะของวัตถุที่บรรทัดนั้น ตัวอย่าง: var test = {a: true} console.log(test); // {a: false} test.a = false; console.log(test); // {a: false}

29
เหตุใดการดีบั๊กใน IDE จึงดีกว่า [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ปรับปรุงคำถามนี้ ฉันเป็นนักพัฒนาซอฟต์แวร์มานานกว่ายี่สิบปีการเขียนโปรแกรมใน C, Perl, SQL, Java, PHP, JavaScript และ Python เมื่อเร็ว ๆ นี้ ผมไม่เคยมีปัญหาฉันไม่สามารถแก้ปัญหาโดยใช้ความคิดบางอย่างระมัดระวังและดีอยู่การแก้จุดบกพร่องprintงบ ฉันเคารพว่าหลายคนพูดว่าเทคนิคของฉันเป็นพื้นฐานและการใช้ดีบักเกอร์จริงใน IDE นั้นดีกว่ามาก แต่จากการสังเกตุของฉันผู้ใช้ IDE ดูเหมือนจะไม่สามารถแก้ไขข้อบกพร่องได้เร็วขึ้นหรือประสบความสำเร็จมากกว่าที่ฉันสามารถทำได้โดยใช้มีดหิน ฉันเปิดกว้างต่อการเรียนรู้เครื่องมือที่เหมาะสมฉันไม่เคยแสดงให้เห็นถึงข้อได้เปรียบที่น่าสนใจในการใช้ตัวแก้ไขภาพ ยิ่งกว่านั้นฉันไม่เคยอ่านบทช่วยสอนหรือหนังสือที่แสดงวิธีการดีบักอย่างมีประสิทธิภาพโดยใช้ IDE นอกเหนือจากพื้นฐานของวิธีการตั้งค่าเบรกพอยต์และแสดงเนื้อหาของตัวแปร ฉันกำลังคิดถึงอะไร อะไรทำให้เครื่องมือการดีบัก IDE มีประสิทธิภาพมากกว่าการใช้printคำสั่งการวินิจฉัยอย่างรอบคอบ คุณสามารถแนะนำทรัพยากร (แบบฝึกหัดหนังสือ screencasts) ที่แสดงเทคนิคปลีกย่อยของการดีบัก IDE ได้หรือไม่ คำตอบที่ดี! ขอบคุณมากสำหรับทุกคนที่สละเวลา ส่องสว่างมาก ฉันโหวตมากและไม่ลงคะแนนเลย บางจุดที่น่าสังเกต: ตัวแก้จุดบกพร่องสามารถช่วยฉันตรวจสอบเฉพาะกิจหรือเปลี่ยนแปลงตัวแปรรหัสหรือลักษณะอื่น ๆ ของสภาพแวดล้อมรันไทม์ขณะที่การดีบักแบบแมนนวลต้องการให้ฉันหยุดแก้ไขและเรียกใช้แอปพลิเคชันอีกครั้ง ตัวแก้จุดบกพร่องสามารถแนบกับกระบวนการทำงานหรือใช้การถ่ายโอนข้อมูลความผิดพลาดในขณะที่มีการดีบักด้วยตนเอง …
145 debugging  ide 

16
ไม่สามารถตอบสนองข้อ จำกัด พร้อมกันได้จะพยายามกู้คืนโดยการทำลายข้อ จำกัด
ด้านล่างเป็นข้อความแสดงข้อผิดพลาดที่ฉันได้รับในพื้นที่แก้ไขข้อบกพร่อง มันทำงานได้ดีและไม่มีอะไรผิดปกติยกเว้นว่าฉันได้รับข้อผิดพลาดนี้ สิ่งนี้จะป้องกันไม่ให้แอปเปิ้ลยอมรับแอปหรือไม่ ฉันจะแก้ไขได้อย่างไร 2012-07-26 01:58:18.621 Rolo[33597:11303] Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added …

12
คัดลอกค่าวัตถุในโหมดดีบัก Visual Studio
ในโหมดดีบัก Visual Studio คุณสามารถวางเมาส์เหนือตัวแปรเพื่อแสดงค่าจากนั้นคลิกขวาเพื่อ "คัดลอก" "คัดลอกนิพจน์" หรือ "คัดลอกค่า" ในกรณีที่ตัวแปรเป็นวัตถุไม่ใช่แค่ประเภทพื้นฐานจะมีเครื่องหมาย + เพื่อขยายและสำรวจวัตถุ มีวิธีคัดลอกทั้งหมดลงในคลิปบอร์ดหรือไม่?

9
วิธีการแสดงอาร์เรย์ที่จัดสรรแบบไดนามิกในดีบักเกอร์ Visual Studio
ถ้าคุณมีอาร์เรย์ที่ปันส่วนแบบคงที่ดีบัก Visual Studio สามารถแสดงองค์ประกอบอาร์เรย์ทั้งหมดได้อย่างง่ายดาย อย่างไรก็ตามหากคุณมีอาร์เรย์ที่จัดสรรแบบไดนามิกและชี้ไปที่ตัวชี้มันจะแสดงเฉพาะองค์ประกอบแรกของอาร์เรย์เมื่อคุณคลิก + เพื่อขยาย มีวิธีง่าย ๆ ในการบอกดีบักเกอร์แสดงข้อมูลนี้ให้ฉันเป็นอาร์เรย์ประเภท Foo และขนาด X หรือไม่

5
คำสั่งหลายคำสั่งใน gdb คั่นด้วยตัวคั่นบางตัว ';'?
ฉันพยายามรันสองคำสั่งพร้อมกันใน gdb: finish; next ฉันลองใช้ ';' เพื่อแยกคำสั่ง แต่ gdb ไม่ให้ฉันทำทั้งสองอย่างพร้อมกัน เป็นไปได้ไหมที่จะทำหลาย ๆ คำสั่งใน gdb คล้ายกับคำสั่ง bash โดยคั่นด้วย ';' คั่น?
144 debugging  gdb 

10
เวลาเริ่มต้น Profiling Vim
ฉันมีปลั๊กอินจำนวนมากที่เปิดใช้งานเมื่อใช้ Vim - ฉันได้รวบรวมปลั๊กอินมาหลายปีแล้ว ฉันรู้สึกเบื่อหน่ายกับระยะเวลาที่ Vim เริ่มต้นในตอนนี้ดังนั้นฉันจึงต้องการสร้างโปรไฟล์การเริ่มต้นและดูว่าปลั๊กอินใดที่ฉันมีส่วนรับผิดชอบ มีวิธีใดบ้างในการกำหนดโปรไฟล์การเริ่มต้นหรือการเรียกใช้สคริปต์ของ Vim ตามหลักการแล้วฉันต้องการทราบว่า Vim ใช้เวลานานเท่าใดในการโหลดสคริปต์ Vim แต่ละครั้ง

6
_DEBUG เทียบกับ NDEBUG
ควรใช้ตัวประมวลผลล่วงหน้าชุดใดเพื่อระบุส่วนการดีบักของรหัส ใช้#ifdef _DEBUGหรือ#ifndef NDEBUGหรือมีวิธีที่ดีกว่าที่จะทำเช่น#define MY_DEBUG? ฉันคิดว่า_DEBUGเป็น Visual Studio เฉพาะมาตรฐาน NDEBUG หรือไม่
142 c++  c  debugging 

3
Android Studio IDE: ทำลายข้อยกเว้น
ดูเหมือนว่า Android Studio ของฉันไม่ต้องการหยุดพักด้วยข้อยกเว้นใด ๆ ตามค่าเริ่มต้น การเปิดใช้งานตัวแบ่ง "ข้อยกเว้นใด ๆ " จะเริ่มทำลายภายในไลบรารี JDE จริง มีวิธีใดที่จะบังคับให้แตกเฉพาะในข้อยกเว้นภายในรหัสของฉันเท่านั้น มาจากจักรวาล Visual Studio กำลังมองหาพฤติกรรมการดีบัก VS เริ่มต้นที่นี่


30
โมดูลต่อไปนี้ถูกสร้างขึ้นโดยเปิดใช้งานการปรับให้เหมาะสมหรือไม่มีข้อมูลการดีบัก
ฉันไม่สามารถกำจัดสิ่งนี้ในโครงการเว็บ VS 2008 ของฉันเมื่อทำการดีบั๊ก ฉันได้ตรวจสอบว่ามันอยู่ในโหมดแก้ไขข้อบกพร่องในโครงการที่ไม่ใช่เว็บที่เป็นปัญหาและอยู่ในสถานะใช้งาน (ดีบั๊ก) ลบรายการทั้งหมดในโฟลเดอร์. NET 2.0 temp ของฉันใน Windows ไม่แน่ใจว่าจะทำอะไรที่นี่

9
เครื่องมือพัฒนา Chrome: [VM] ไฟล์จากจาวาสคริปต์
ฉันเพิ่มเบรกพอยต์ในไฟล์ javascript ของฉัน (jaydata.js) และได้กด "ก้าวข้ามการเรียกใช้ฟังก์ชันถัดไป" เมื่อมันมาถึงสายที่: }, ไฟล์อื่นชื่อ "[VM] (8312)" โผล่ขึ้นมา ฉันยังคงคลิก "ก้าวข้ามการเรียกใช้ฟังก์ชันถัดไป" และตอนนี้หน้าจอของฉันคือ: สคริปต์ที่แปลกและลึกลับเหล่านี้มีชื่อว่า "[VM] (XXXX") และมาจากที่ใด

12
คำสั่งที่มีประโยชน์ / มีประโยชน์มากที่สุดสำหรับ gdb ดีบักเกอร์ [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน7 ปีที่ผ่านมา คุณสามารถโพสต์คำสั่งที่มีประโยชน์และมีประโยชน์ที่สุดของคุณในขณะที่คุณเรียกใช้ดีบักเกอร์เช่น gdb หรือ dbx
138 c  unix  gdb  debugging  dbx 

7
วิธีการดีบักการกำหนดค่าโฮสต์เสมือน apache
อีกครั้งฉันมีปัญหากับการกำหนดค่าโฮสต์เสมือน apache ของฉัน (ใช้การกำหนดค่าเริ่มต้นแทนการใช้เฉพาะของฉัน) ปัญหาไม่ได้เป็นการกำหนดค่าที่ผิดจริงๆ แต่จะแก้ไขได้อย่างไร ใครบ้างที่มีคำแนะนำที่ดีในการแก้ไขปัญหาประเภทนี้อย่างรวดเร็ว? ข้อมูลเพิ่มเติมบางส่วน ไฟล์ conf เริ่มต้นคือไฟล์นี้: NameVirtualHost * <VirtualHost *> ServerAdmin webmaster@localhost DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews …

7
วิธีการดีบักโปรเจ็กต์ไลบรารีคลาสภายนอกใน Visual Studio
ฉันมีโปรเจ็กต์ (A) ที่อ้างอิงแอสเซมบลีจากไลบรารีคลาสโปรเจ็กต์ภายนอก (B) ที่อยู่ในโซลูชันอื่นเทียบกับโซลูชันอื่น ฉันยังไม่เข้าใจว่าฉันจะดีบักไลบรารีคลาสจาก B ได้อย่างมีประสิทธิภาพได้อย่างไรในขณะที่รันโปรแกรมจากโปรเจ็กต์ A มีบางอย่างที่ฉันต้องเปิดใช้งานในโปรเจ็กต์ B เช่นข้อมูลการดีบักเป็นต้นเพื่อที่ฉันจะสามารถเข้าสู่เวลาดีบักจาก A ได้หรือไม่ ขอบคุณล่วงหน้า.

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.