亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

高效程序調試和測試方法

系統 1650 0

調試程序往往比編寫程序更浪費時間,正如一些有經驗的程序員所說,軟件的開發應該包括20%的程序編寫時間和80%的Debug時間。并且調試程序比編寫程序要難2倍。編寫巧妙的程序并不一定調試方便。

程序的調試有很多方法,比如最常見的VC之類的IDE都提供加斷點,逐步執行,逐段執行的功能。但是這只能針對程序某個微小的片段,對于前期bug的范圍的界定并不是很方便。況且對于不滿IDE的臃腫,身陷Vim, notepad++, Editplus之類的編輯器之中,我們需要找到更加高效的程序調試和測試方法。

在程序執行的關鍵點打印Log是一個非常高效的方法,如何打印log進行程序調試呢? 以PHP程序開發為例,需要2個步驟:

1. PHP函數中兩個關鍵的打印變量的方法

print_r var_dump

所以我們可以在關鍵的地方打印需要的變量。

2. 收集我們在程序中打印的變量

我們可以把程序執行過程中打印的變量逐條寫到文本文件里。在程序執行完畢之后進行分析,查找Bug,修正程序。

PHP中打印時間,和變量的程序片段:

    function file_log($message) {
    global $file_log_location;
    ob_start();
    echo date("Y-m-d H:i:s \t", time());
    print_r($message);
    echo "\n";
    $var = ob_get_contents();
    ob_end_clean();
    $open=@fopen($file_log_location,"a");
    @fwrite($open,$var);
    fclose($open);
}

  

應用此段程序還需要對log的存儲位置 $file_log_location 賦值。

在需要的地方插入此片段,執行PHP程序,就會得到所需信息。

但是假如是長時間運行的程序如何在程序執行的過程中就查看到log的信息?相信你已經想到了可以在shell中用

tail -f /var/debug.log

這樣總可以看到程序吐出的最新的debug信息。

附件是Drupal中進行debug的一個小的module,做drupal開發的同學可以嘗試一下。

Drupal debug module

雖然本文針對PHP開發所言,但是這種方法也適合python,java之類的動態語言的開發。

原文地址: http://blog.eood.cn/efficient_debugging_php_java_python

–EOF–

高效程序調試和測試方法


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 天天综合色网 | 欧美成人免费高清网站 | 欧美色网在线 | 四虎影视在线免费观看 | 日产国语一区二区三区在线看 | 青娱乐伊人| 在线免费精品视频 | 很很鲁在线视频播放影院 | 手机看片自拍日韩日韩高清 | 欧洲一级毛片免费 | 婷婷亚洲国产成人精品性色 | 亚洲精品久久久午夜伊人 | 日韩欧美一级大片 | 亚洲a在线播放 | 毛片网站免费在线观看 | 五月天国产精品 | 尤物视频国产 | 国产三级日产三级日本三级 | 亚洲欧美日韩精品一区 | 2020国产成人精品视频人 | 亚洲成人观看 | 五月婷婷激情 | 大杳焦伊人久久综合热 | 末成年一级在线看片 | 国产在线19禁免费观看 | 奇米第四色影视 | 伊人天天干 | 亚洲一级毛片在线观播放 | 日韩有码在线播放 | 天天夜碰日日摸日日澡 | 久久免费视频播放 | 天天添天天操 | 偷自拍视频区综合视频区 | 在线成人免费观看国产精品 | 亚洲成a人片在线观看www | 99国产高清久久久久久网站 | 中文字幕欧美日韩 | 欧美三级成人理伦 | 91精品国产欧美一区二区 | 亚洲一区二区三区网站 | 久久91精品国产91久久户 |