Chương 12: Kiểm tra và gỡ lỗi Sức mạnh công nghiệp Debugging với Drosera Nếu bạn gọi lại từ Chương 1, Safari được xây dựng trên đầu trang của trình duyệt nguồn mở WebKit động cơ. Drosera là một JavaScript debugger cao cấp được bao gồm với WebKit hàng đêm, nhưng không phải là một phần của Safari chính nó. Tuy nhiên, nếu bạn đang chạy Mac OS X, bạn có thể tải về mới nhất của WebKit đêm xây dựng tại và tận dụng lợi thế của việc sử dụng Drosera. | Chapter 12 Testing and Debugging Industrial Strength Debugging with Drosera If you recall from Chapter 1 Safari is built on top of the open source WebKit browser engine. Drosera is a high-powered JavaScript debugger that is included with the WebKit nightly builds but is not part of Safari itself. However if you are running Mac OS X you can download the latest nightly build of WebKit at and take advantage of using Drosera. At the time of this writing Drosera is not available on Microsoft Windows platforms. Refer to for the latest compatibility information. As you would expect from a full-fledged debugger Drosera enables you to set breakpoints step into out over functions and view variable state at a point of execution. Preparing Drosera for Safari After downloading the latest nightly WebKit build and installing it to your Applications folder you first need to prepare your environment. Drosera works by attaching itself to a running WebKit browser. However by default it does not recognize Safari. Therefore follow these instructions to enable it 1. Be sure Safari WebKit and Drosera are all closed. 2. Enter the following into a terminal window defaults write WebKitScriptDebuggerEnabled -bool true 3. Launch Safari and navigate to your application URL. 4. Launch Drosera. 5. In the Attach dialog box select Safari from the list and click Attach. 268 Chapter 12 Testing and Debugging The Drosera debugger is shown in Figure 12-6. R 0 R Safari - Debugger _ Ö Ö ö s Continue Pause Step Into Step Out Step Owe Console files function variable Value M hnp 7 Mfile III Library WebServer Docum Mt Ubrary WebSenn Documents ipd sctTiiaeoutCpreloodlmagcs 0 seITimeout checkOrienlAndLocotion 0 setlntervoRcheckOrientAndLocation 300 tn findPorent event .target. Mi function unselectC f selected i 1 setTimcoul unsel cl S00 Is if closs .