Who Am I? Objective. Debugging Essentials

Similar documents
Debugging Essentials. Overview. Attendees will learn... Session Number

A Tutorial for ECE 175

Debugging INTRODUCTION DEBUGGER WHAT IS VBA'S DEBUGGING ENVIRONMENT?

Programming Logic - Beginning

Zend Studio 3.0. Quick Start Guide

429 - Solid Edge - Tips and Tricks

Parallel Debugging. ª Objective. ª Contents. ª Learn the basics of debugging parallel programs

SAP Debug Tips Switching between the Classic Debugger and New Debugger

Introduction to Problem Solving and Programming in Python.

The NetBeans Debugger: A Brief Tutorial

Lab 8 - Vectors, and Debugging. Directions

Enterprise Architect. User Guide Series. Portals. Author: Sparx Systems. Date: 19/03/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Portals

IBM i Debugger. Overview Service Entry Points Debugger Functions Attach to an IBM i Job Launch Configurations and Settings

Enterprise Architect. User Guide Series. Portals

Tech Note 726 Capturing a Memory Dump File Using the Microsoft Debug Diagnostic Tool (32bit)

hw6, BFS, debugging CSE 331 Section 5 10/25/12 Slides by Kellen Donohue

SAP Certified Development Associate ABAP with SAP NetWeaver 7.02

Visual Studio 2008 Load Symbols Manually

EW The Source Browser might fail to start data collection properly in large projects until the Source Browser window is opened manually.

EiffelStudio the Eiffel IDE

SAS Tricks and Techniques From the SNUG Committee. Bhupendra Pant University of Western Sydney College

After completing this appendix, you will be able to:

Intro to MS Visual C++ Debugging

Noopur Gupta Eclipse JDT/UI Committer IBM India

First, let s just try to run the program. When we click the button we get the error message shown below:

NEW CEIBO DEBUGGER. Menus and Commands

GP Power Tools. What are the benefits. (AKA: How it solves your pain points) Last Updated: 24-Apr-18

Coding Faster: Getting More Productive with Microsoft Visual

XDebug Your Code Tips and Tricks for Writing Bug-Free High Impact Code. Brandon Savage, Applied Security, Inc

M16C R8C PC7501 Emulator Debugger V Release Notes

NetBeans Tutorial. For Introduction to Java Programming By Y. Daniel Liang. This tutorial applies to NetBeans 6, 7, or a higher version.

Mastering the Visual LISP Integrated Development Environment

_ V Renesas R8C In-Circuit Emulation. Contents. Technical Notes

Debugging in AnyLogic. Nathaniel Osgood CMPT

Intro to Flex Debugging and Profiling

Marten van Dijk, Syed Kamran Haider

<Insert Picture Here> How to Debug Oracle ADF Framework Applications

SQL Server Whitepaper DEMYSTIFYING DEBUGGING TECHNIQUES WITH SQL SERVER BY PINAL DAVE

Xcode Tricks. ios App Development Fall 2010 Lecture 13

ni.com Preparing for the CLAD Exam

FIREFOX MENU REFERENCE This menu reference is available in a prettier format at

Debugging. CSE 2231 Supplement A Annatala Wolf

BasicScript 2.25 User s Guide. May 29, 1996

Chapter 12 Visual Program Debugger

TotalView. Debugging Tool Presentation. Josip Jakić

Supplement: Visual C++ Debugging

How manual testers can break into Test Automation without programming skills

Scientific Programming in C IX. Debugging

SQL Server. Management Studio. Chapter 3. In This Chapter. Management Studio. c Introduction to SQL Server

Laboratory Assignment #4 Debugging in Eclipse CDT 1

The Road to CCSv4. Status Update

We are built to make mistakes, coded for error. Lewis Thomas

MEAP Edition Manning Early Access Program Get Programming with Java Version 1

_ V ST STM8 Family On-Chip Emulation. Contents. Technical Notes

High Reliability Systems. Lloyd Moore, President

ActiveBPEL Fundamentals

Compile your code using ncvhdl. This is the way to compile comp_const.vhd:! "#$ %" #&'

Playlist Builder 1.5 Manual

Program Correctness and Efficiency. Chapter 2

COMP390 (Design &) Implementation

Debugging for Fuco s. Explanation, tips & trics for debugging in SAP CRM

Section 1 AVR Studio User Guide

COMP390 (Design &) Implementation

An Overview of ABAP Debugger Settings and System Areas

COMP390 (Design &) Implementation

Software Engineering

SECTION 2: Loop Reasoning & HW3 Setup

ewon Flexy JAVA J2SE Toolkit User Guide

Word Processing vs. Desktop Publishing

SECTION 2: Loop Reasoning & HW3 Setup

An Introduction to Komodo

Using the KD30 Debugger

Debugging in Small Basic is the process of analysing a program to detect and fix errors or improve functionality in some way.

Section 2: Developer tools and you. Alex Mariakakis (staff-wide)

Integrated Software Environment. Part 2

Session V-STON Stonefield Query: The Next Generation of Reporting

UNIT V SYSTEM SOFTWARE TOOLS

ArcGIS Pro Tasks: Tips and Tricks. Jason Camerano

ME 142 Engineering Computation I. Debugging Techniques

1.2 - Introduction to the IAR Workbench IDE *

Software Engineering Testing and Debugging Debugging

Office Hours: Hidden gems in Excel 2007

GDB Tutorial. A Walkthrough with Examples. CMSC Spring Last modified March 22, GDB Tutorial

Under the Debug menu, there are two menu items for executing your code: the Start (F5) option and the

Today s Topic. Software Engineering Testing and Debugging Debugging. Today s Topic. The Main Steps in Systematic Debugging

BASICS OF THE RENESAS SYNERGY PLATFORM

Read & Download (PDF Kindle) VBA Developer's Handbook, 2nd Edition

You can also start with both an executable program and a core file specified:

Photoshop Fundamentals

Release Notes. Desktop Edition. Version May 2018

Version New Features. New Speaker presets for all VTX Line Array systems

CSCI0330 Intro Computer Systems Doeppner. Lab 02 - Tools Lab. Due: Sunday, September 23, 2018 at 6:00 PM. 1 Introduction 0.

Cisco Unified Application Designer 2.4

NetBeans IDE Field Guide

Parallel Debugging with TotalView BSC-CNS

Tutorial. How to use Keil µvision with Spansion templates Spansion Inc.

Debugging with GDB and DDT

Project Debugging with MDK-ARM

M Developing Microsoft ASP.NET Web Applications Using Visual Studio.NET 5 Day Course

Transcription:

Session SCH290 Debugging Essentials Rick Schummer White Light Computing, Inc. Copyright 2004 Who Am I? President of White Light Computing, Inc. Co-authoring: What s New in Nine Co-author: Deploying Visual FoxPro Solutions Co-author: MegaFox: 1002 Things You Wanted to Know About Extending Visual FoxPro Co-author: 1001 Things You Wanted to Know About Visual FoxPro (KiloFox) VFP MVP and MCP Author of WLC HackCX & MenuDesigner raschummer@whitelightcomputing.com Objective Improve the day-to-day debugging adventures Reduce the time to solve problems Introduce some debugging enhancements delivered in VFP 9 (Europa) 1

What you can learn Using the Scientific Method Testing vs. Debugging Debugging basics Reset to factory settings Start the debugger Loading configurations Fixing Source not available What you can learn Hidden Tips Rerunning code (instant replay) Sophisticated breakpoints Coverage Profiler tips Finding undeclared variables VFP 9 (Europa) changes Scientific Method Make an observation Formulate questions Create hypothesis/prediction Fix and test Evaluate results Make a decision 2

Testing vs. Debugging Testing proves requirements Written requirements Debugging is problem solving Construction phase Defects in testing Better with experience Yesteryear or not? FoxPro 2.6 DOS/Windows Trace Window Debug Window Still in use Lots of applications being converted to newer technology and requirements are in the code Debugger Basics Configure the debugger Fox Frame or Debug Frame Windows and options Fonts, Colors Shortcut keys Drag and Drop 3

Debugger Basics Changing values Throttle Fix SYS(1270) Factory Settings CLEAR DEBUG Clears breakpoints, watch expressions, and output window Resets windows Does not clear color settings (registry) Debug Frame: menu option Program to clear settings Start Debugger Code DEBUG SET STEP ON ASSERT SUSPEND DebugMode() F1 Tech VFE Optional DEBUG/SUSPEND Will not crash runtime 4

Debugger Configurations Debug Frame only Load/Save settings Customize Watch Window for a particular scenario Trick to sort the items in Watch Window Source Code Lost? Hidden Tips Trace: Find dialog Output: Mismatched types Call Stack: Ordinal Position Watch Window: Dialog function problem Locals: Filter on types of memory variables 5

Instant Replay Set Next Statement Accidentally hit the Step Out or Step Over Change values and try again save rerunning code Pushed to the Breakpoint Location Location when true expression True expression Expression changes Pass count Enabling and disabling Skipping the breakpoint dialog When does the code run? Tracking Events What methods were executed and in what order BindEvents() Access and Assign Methods 6

Coverage Profiler Profile Mode for performance Bottlenecks Hits Coverage Mode to ensure all code tested Shows what code was not executed Character to indicate missed code is configurable. Coverage Profiler Started programmatically or via menu in Debug Frame Analyze the log file Creating Add-ins Breaking Up Long Lines SQL Selects IF conditions REPORT FORM 7

Undeclared Variables VFP 7 introduced _vfp.languageoptions Debug Output Window Only code that is executed Undeclared variable analyzer tool Europa Watch Window Errors Output Window mouse wheel enabled Reports can be debugged SET COVERAGE command at runtime CLEAR ERROR Tricky Bugs Objects are not what they appear Module performance Variable scoping Event firing 8

Questions? If there is time for questions that have not been asked during session, now is a great time to ask Feel free to ask me questions about the topic at any time during the conference Contact information is in the white paper if you want to ask after the conference DevEssentials Web Update www.devessentials.com This session will have web updates. Thank you! Please remember to fill out your evaluation. 9