JP2016511497A - ジャストマイコードを使用したジャバスクリプトデバッギング - Google Patents
ジャストマイコードを使用したジャバスクリプトデバッギング Download PDFInfo
- Publication number
- JP2016511497A JP2016511497A JP2016501782A JP2016501782A JP2016511497A JP 2016511497 A JP2016511497 A JP 2016511497A JP 2016501782 A JP2016501782 A JP 2016501782A JP 2016501782 A JP2016501782 A JP 2016501782A JP 2016511497 A JP2016511497 A JP 2016511497A
- Authority
- JP
- Japan
- Prior art keywords
- code
- debugger
- javascript
- statement
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
[0001] 多岐にわたるライブラリおよびプラグインがジャバスクリプトに使用可能であり、このことは、ジャバスクリプトベースのアプリケーションのより簡単な開発を可能にする。このようなライブラリは、すでにデバッグされ、最適化されているので、ジャバスクリプト開発者は、通常、ライブラリ自体はデバッグされる必要がないと想定する。加えて、このようなツールのうちの多くは、基礎をなすコードが難読化され、開発者には読めなくなるように圧縮および縮小されており、これは、ジャバスクリプト開発者がこれらの第三者のライブラリをさらに変更することを防止する。ジャバスクリプト開発者のコード内のエラーは、このようなライブラリ内にエラーを引き起こすことがあり、これは、開発者がライブラリコードを変更できないか、または変更したくない場合、コードをデバッグする際に混乱を招くおそれがある。それよりも、開発者は、開発者自身のコード内のエラーを識別することにより興味があることが多い。
Claims (10)
- コンピュータシステムにおいて、ジャバスクリプトコードおよびジャバスクリプトにコンパイルされる他のコードをデバッグするための方法であって、
前記ジャバスクリプトコードの1つまたは複数のセグメントをライブラリコードとして指定するユーザー入力を受け取ることと、
前記ジャバスクリプトコードのユーザーにより生成されたセグメントのみにおけるエラーを識別するために、前記ジャバスクリプトコードをステップスルーするためのステップ動作を含むデバッグ動作を前記ジャバスクリプトコードに対して実行することとを含み、前記ユーザーにより生成されたセグメントは、ライブラリコードとして指定されなかったコードに対応する、方法。 - スクリプトエンジンによって次のコード文を実行するステップ動作をデバッガによって実行することと、
前記実行される文がユーザーにより生成されたコードである場合、デバッガユーザーインターフェース上で前記実行された文を識別することと、
をさらに含む、請求項1に記載の方法。 - スクリプトエンジンによって次のコード文を実行するステップ動作をデバッガによって実行することと、
前記実行される文がライブラリコードである場合、前記スクリプトエンジンに、ドキュメントバウンダリへステップするように命令することと、
をさらに含む、請求項1に記載の方法。 - 前記ジャバスクリプトコードの前記1つまたは複数のセグメントが、コンパイル済みスクリプトファイル内の注釈によって識別される別個のドキュメントである、請求項3に記載の方法。
- 前記ジャバスクリプトコードの前記1つまたは複数のセグメントが、コンパイル済みスクリプトファイルについてのソースマップによって識別される別個のドキュメントであり、前記別個のドキュメントは、ジャバスクリプトまたは他のプログラミング言語で書かれている、請求項3に記載の方法。
- 実行が前記デバッガにイールドする場合、前記ドキュメントバウンダリにおいて、前記ジャバスクリプトの通常の実行を継続すること、
をさらに含む、請求項3に記載の方法。 - 実行が前記デバッガにイールドしない場合、前記ドキュメントバウンダリにおいて、前記ドキュメントバウンダリに続く文がユーザーにより生成されたコードであるかを判定することと、
前記文がユーザーにより生成されたコードである場合、デバッガユーザーインターフェース上で前記実行される文を識別することと、
をさらに含む、請求項3に記載の方法。 - 実行が前記デバッガにイールドしない場合、前記ドキュメントバウンダリにおいて、前記ドキュメントバウンダリに続く文がライブラリコードであるかを判定することと、
前記実行される文がライブラリコードである場合、前記スクリプトエンジンに、次のドキュメントバウンダリへステップするように命令することと、
をさらに含む、請求項3に記載の方法。 - デバッガと、1つまたは複数のジャバスクリプトドキュメントと、スクリプトエンジンとを含むコンピュータシステムであって、前記デバッガは、ジャバスクリプトコードをステップスルーするためのステップ動作を含む、1つまたは複数のデバッグ動作を実行するように構成され、前記デバッガは、
前記ジャバスクリプトコードの1つまたは複数のセグメントをライブラリコードとして指定するユーザー入力を受け取り、
前記ジャバスクリプトコードのユーザーにより生成されたセグメントのみにおけるエラーを識別するために、前記ジャバスクリプトコードをステップスルーする
ように動作し、前記ユーザーにより生成されたセグメントは、ライブラリコードとして指定されなかったコードに対応する、コンピュータシステム。 - 前記デバッガが、
ユーザーによってステップインするように指示される場合、前記スクリプトエンジンによって次のコード文を実行し、
前記実行される文がユーザーにより生成されたコードである場合、デバッガユーザーインターフェース上で前記実行される文を識別し、
前記実行される文がライブラリコードである場合、前記スクリプトエンジンに、ドキュメントバウンダリへステップするように命令する
ようにさらに動作する、請求項9に記載のコンピュータシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/831,801 US10664384B2 (en) | 2013-03-15 | 2013-03-15 | Javascript debugging using just my code |
US13/831,801 | 2013-03-15 | ||
PCT/US2014/025198 WO2014151201A1 (en) | 2013-03-15 | 2014-03-13 | Javascript debugging using just my code |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016511497A true JP2016511497A (ja) | 2016-04-14 |
JP6543609B2 JP6543609B2 (ja) | 2019-07-10 |
Family
ID=50628934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016501782A Active JP6543609B2 (ja) | 2013-03-15 | 2014-03-13 | ジャストマイコードを使用したジャバスクリプトデバッギング |
Country Status (6)
Country | Link |
---|---|
US (1) | US10664384B2 (ja) |
EP (1) | EP2972882B1 (ja) |
JP (1) | JP6543609B2 (ja) |
KR (1) | KR102184436B1 (ja) |
CN (1) | CN105164648B (ja) |
WO (1) | WO2014151201A1 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8997049B1 (en) * | 2010-05-21 | 2015-03-31 | Cadence Design Systems, Inc. | Method and system for debugging of compiled code using an interpreter |
US9977661B2 (en) * | 2013-06-28 | 2018-05-22 | Tencent Technology (Shenzhen) Company Limited | Method and system for generating a user interface |
US10003499B2 (en) * | 2015-09-09 | 2018-06-19 | International Business Machines Corporation | Client-configured server class tracing to a configurable threshold |
US10289536B2 (en) * | 2016-08-31 | 2019-05-14 | Synopsys, Inc. | Distinguishing public and private code in testing environments |
US10162731B2 (en) | 2017-01-23 | 2018-12-25 | International Business Machines Corporation | Conditional breakpoint on call stack during debugging at runtime |
US20180210713A1 (en) * | 2017-01-24 | 2018-07-26 | Salesforce.Com, Inc. | Methods and systems for using cross repositories |
US11392482B2 (en) | 2019-01-03 | 2022-07-19 | Microsoft Technology Licensing, Llc | Data breakpoints on certain kinds of functions |
US11983094B2 (en) | 2019-12-05 | 2024-05-14 | Microsoft Technology Licensing, Llc | Software diagnostic context selection and use |
US11748460B2 (en) * | 2020-04-27 | 2023-09-05 | Imperva, Inc. | Procedural code generation for challenge code |
CN113031932B (zh) * | 2021-03-11 | 2023-10-20 | 腾讯科技(深圳)有限公司 | 项目开发方法、装置、电子设备及存储介质 |
CN114625660A (zh) * | 2022-03-22 | 2022-06-14 | 阿里巴巴(中国)有限公司 | 调试方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002196950A (ja) * | 2000-12-25 | 2002-07-12 | Toshiba Corp | デバッグシステム |
JP2003323318A (ja) * | 2002-05-01 | 2003-11-14 | Seiko Epson Corp | 特殊名付き関数によるソフトウェア区切り点の実行装置及びその方法 |
JP2004326789A (ja) * | 2003-04-21 | 2004-11-18 | Microsoft Corp | ジャストマイコード型のデバッグ方法 |
Family Cites Families (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5819093A (en) * | 1995-03-03 | 1998-10-06 | Sun Microsystems, Inc. | System and method for a distributed debugger for debugging distributed application programs |
US6065035A (en) * | 1996-06-13 | 2000-05-16 | Microsoft Corporation | Method and system for procedure boundary detection |
US6052780A (en) * | 1996-09-12 | 2000-04-18 | Open Security Solutions, Llc | Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information |
CA2205096C (en) * | 1997-05-09 | 2001-10-09 | Ibm Canada Limited-Ibm Canada Limitee | A system for remote debugging of client/server applications |
US6061518A (en) | 1997-11-25 | 2000-05-09 | International Business Machines Corporation | Data processing system and method for debugging a JavaScript program |
US7353163B2 (en) * | 1999-04-27 | 2008-04-01 | Transitive Limited | Exception handling method and apparatus for use in program code conversion |
US7165243B1 (en) * | 1999-06-25 | 2007-01-16 | Sun Microsystems, Inc. | Multi-lingual tag extension mechanism |
US6539464B1 (en) * | 2000-04-08 | 2003-03-25 | Radoslav Nenkov Getov | Memory allocator for multithread environment |
JP2004013190A (ja) * | 2002-06-03 | 2004-01-15 | Matsushita Electric Ind Co Ltd | ソフトウエア開発環境、シミュレータ及び記録媒体 |
US7213123B2 (en) | 2002-10-24 | 2007-05-01 | International Business Machines Corporation | Method and apparatus for mapping debugging information when debugging integrated executables in a heterogeneous architecture |
US7650592B2 (en) * | 2003-03-01 | 2010-01-19 | Bea Systems, Inc. | Systems and methods for multi-view debugging environment |
US7685570B2 (en) * | 2003-06-09 | 2010-03-23 | Microsoft Corporation | Error/exception helper |
US7730460B1 (en) | 2004-06-18 | 2010-06-01 | Apple Inc. | Code execution visualization using software fingerprinting |
US8302020B2 (en) | 2004-06-25 | 2012-10-30 | Apple Inc. | Widget authoring and editing environment |
US7984220B2 (en) * | 2004-09-02 | 2011-07-19 | International Business Machines Corporation | Exception tracking |
US7882492B2 (en) * | 2004-09-17 | 2011-02-01 | Oracle America, Inc. | Intelligent computer program debugger, and system and method for implementing the same |
US7698692B1 (en) * | 2005-11-10 | 2010-04-13 | Sun Microsystems, Inc. | Preparing a binary file for future instrumentation |
US8087002B2 (en) | 2006-04-04 | 2011-12-27 | Tibco Software Inc. | Method and system for providing a visual debugger for an interpreted statistical language |
US20070250810A1 (en) * | 2006-04-20 | 2007-10-25 | Tittizer Abigail A | Systems and methods for managing data associated with computer code |
US8225286B2 (en) | 2006-05-23 | 2012-07-17 | Microsoft Corporation | Debugging interpreted input |
US8429613B2 (en) | 2006-10-31 | 2013-04-23 | Microsoft Corporation | Stepping and application state viewing between points |
US8196107B2 (en) | 2008-06-19 | 2012-06-05 | Microsoft Corporation | Simulating stepping through interpreted code |
US9632909B2 (en) | 2008-12-16 | 2017-04-25 | Microsoft Technology Licensing, Llc | Transforming user script code for debugging |
US8595702B2 (en) | 2009-03-13 | 2013-11-26 | Microsoft Corporation | Simultaneously displaying multiple call stacks in an interactive debugger |
CN102053906A (zh) | 2009-10-30 | 2011-05-11 | 国际商业机器公司 | 用于收集程序运行时信息的系统和方法 |
US8640104B2 (en) | 2009-12-08 | 2014-01-28 | International Business Machines Corporation | Computer method and apparatus for debugging in a dynamic computer language |
US9262137B2 (en) | 2010-05-27 | 2016-02-16 | Salesforce.Com, Inc. | Adding directives for versions of javascript files directly into source code in a multi-tenant database environment |
US8910148B2 (en) * | 2010-07-29 | 2014-12-09 | International Business Machines Corporation | Packaging an application with plurality of libraries |
US8397218B2 (en) | 2010-10-19 | 2013-03-12 | International Business Machines Corporation | Step granularity selection in a software debugger |
US8495590B2 (en) * | 2011-06-10 | 2013-07-23 | International Business Machines Corporation | User-specific software debugging |
US20130055205A1 (en) * | 2011-08-23 | 2013-02-28 | Semmle Limited | Filtering source code analysis results |
US9135147B2 (en) | 2012-04-26 | 2015-09-15 | International Business Machines Corporation | Automated testing of applications with scripting code |
US8914776B2 (en) | 2012-05-17 | 2014-12-16 | Microsoft Corporation | Assisting development tools through inserted code statements |
US9436452B2 (en) * | 2012-11-12 | 2016-09-06 | Keysight Technologies, Inc. | Method for enforcing language subsets |
US20140201709A1 (en) | 2013-01-15 | 2014-07-17 | Martin Carl Euerle | JavaScript™ Deployment Build Tool for software code that uses an object literal to define meta data and system code. |
US9052980B2 (en) * | 2013-02-20 | 2015-06-09 | Bmc Software, Inc. | Exception based quality assessment |
US20140013306A1 (en) | 2013-04-20 | 2014-01-09 | Concurix Corporation | Computer Load Generator Marketplace |
US9424163B2 (en) | 2014-01-15 | 2016-08-23 | Microsoft Technology Licensing, Llc | Exception and debugging behaviors for JavaScript debugging using just my code |
US9239774B2 (en) | 2014-01-15 | 2016-01-19 | Microsoft Technology Licensing, Llc | Classification of JavaScript code for debugging using just my code |
CN104375940A (zh) | 2014-11-28 | 2015-02-25 | 浪潮电子信息产业股份有限公司 | 一种对javaScript文件的调试方法 |
-
2013
- 2013-03-15 US US13/831,801 patent/US10664384B2/en active Active
-
2014
- 2014-03-13 JP JP2016501782A patent/JP6543609B2/ja active Active
- 2014-03-13 KR KR1020157025179A patent/KR102184436B1/ko active IP Right Grant
- 2014-03-13 WO PCT/US2014/025198 patent/WO2014151201A1/en active Application Filing
- 2014-03-13 CN CN201480015943.XA patent/CN105164648B/zh active Active
- 2014-03-13 EP EP14720771.6A patent/EP2972882B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002196950A (ja) * | 2000-12-25 | 2002-07-12 | Toshiba Corp | デバッグシステム |
JP2003323318A (ja) * | 2002-05-01 | 2003-11-14 | Seiko Epson Corp | 特殊名付き関数によるソフトウェア区切り点の実行装置及びその方法 |
JP2004326789A (ja) * | 2003-04-21 | 2004-11-18 | Microsoft Corp | ジャストマイコード型のデバッグ方法 |
Non-Patent Citations (3)
Title |
---|
下岡秀幸: "ステップアップ!PHP 最終回 ドキュメントを残す", WEB+DB PRESS, vol. 第49巻, JPN6018002227, 25 March 2009 (2009-03-25), JP, pages 184 - 191 * |
北村研二: "Google API開発環境", 月刊アスキードットテクノロジーズ, vol. 第16巻,第6号, JPN6018002225, 23 April 2011 (2011-04-23), JP, pages 24 - 31 * |
的場聡弘: "デバッグもリズムだ! 意図したところで止める、デバッグサイクルを高速化する", WEB+DB PRESS, vol. 第43巻, JPN6018002226, 25 March 2008 (2008-03-25), JP, pages 60 - 67 * |
Also Published As
Publication number | Publication date |
---|---|
US10664384B2 (en) | 2020-05-26 |
EP2972882B1 (en) | 2019-12-04 |
KR20150132161A (ko) | 2015-11-25 |
US20140282417A1 (en) | 2014-09-18 |
JP6543609B2 (ja) | 2019-07-10 |
EP2972882A1 (en) | 2016-01-20 |
KR102184436B1 (ko) | 2020-11-30 |
CN105164648A (zh) | 2015-12-16 |
WO2014151201A1 (en) | 2014-09-25 |
CN105164648B (zh) | 2019-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6543609B2 (ja) | ジャストマイコードを使用したジャバスクリプトデバッギング | |
US9239774B2 (en) | Classification of JavaScript code for debugging using just my code | |
US9424163B2 (en) | Exception and debugging behaviors for JavaScript debugging using just my code | |
Burg et al. | Interactive record/replay for web application debugging | |
US10761963B2 (en) | Object monitoring in code debugging | |
US10409564B2 (en) | Recording and playback of development sessions | |
US8429613B2 (en) | Stepping and application state viewing between points | |
KR20210002701A (ko) | 교차 레벨 트레이스 매핑을 통한 실행 제어 | |
CN100590604C (zh) | 可插部件上的断点调试 | |
US20120159449A1 (en) | Call Stack Inspection For A Thread Of Execution | |
US10445216B2 (en) | Debugging program code at instruction level through emulation | |
US9459989B2 (en) | Method and apparatus for reverse debugging source code using causal analysis | |
CN106844181B (zh) | 用于记录用户行为的方法、系统及移动终端 | |
US20130346917A1 (en) | Client application analytics | |
US20070294667A1 (en) | Method for moving and copying dependencies along with source code | |
US9009678B2 (en) | Software debugging with execution match determinations | |
JP2006185211A (ja) | プログラム解析装置、テスト実行装置、その解析方法及びプログラム | |
US8898649B2 (en) | Application program analysis method, analysis system and recording medium for identifying a contributing factor for an invalid operation of an application program | |
EP3195115A1 (en) | Code development tool with multi-context intelligent assistance | |
TWI672613B (zh) | 使用者行為記錄方法與使用該方法的電子裝置 | |
JP2008191796A (ja) | 解析装置及び解析方法及びプログラム | |
US20130007517A1 (en) | Checkpoint Recovery Utility for Programs and Compilers | |
Kulesovs | Automated Testing of iOS Apps: tTap Extension for Apple UIAutomation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A529 | Written submission of copy of amendment under article 34 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A529 Effective date: 20151110 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180911 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181205 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190522 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190617 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6543609 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |