位置: 编程技术 - 正文

node.js学习总结之调式代码的方法(nodejs基础知识)

编辑:rootadmin

推荐整理分享node.js学习总结之调式代码的方法(nodejs基础知识),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js入门教程,node.js教学,node.js入门教程,node.js基础知识,node.js基础入门,node.js基础知识,nodejs心得,node.js基础知识,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

你有没有曾经调式某段代码时,总觉得世界上有鬼?

你有没有曾经调式API时,总感觉是调用第三方的接口问题或者文档说明不对?

你有没有曾经调式一个bug 时,总感觉问题的来源是使用的方式不对?

你有没有在安装一个服务时,总感觉文档或者环境不相符合?

相信过程和方法,切勿被结果误导 ............

概述

调式代码很多时候类似于查案一样,只是结果的重要程度不同,警察查案为的是人民安稳,而我们调式则是为了系统的安稳。既然这样我们就不要冤枉任何一段代码和程序,以免他们受到不合理的惩罚。

以下的一些过程方法都来自于个人的总结,从个人角度说前人的一些方法都是经过长期的经验积累,当然参考性理论性都比较强,而作为个人的方法,则可能更适合像我等 DS 。

测试方法

代码过程式调式方法

代码调式首先要注意的是过程,你必须要理清楚导致最终结果的思路,也就是作案的过程,从作案过程中的一步步跟进得到作案结果。在作案过程分析中对于每一个疑点都必须打上标记(也就是代码中所提到的 log 信息)。经过这样的分析过程后,再进行黑盒测试,添加输入,验证结果。最终根据每一步的标记来验证你的判断,从而找到原因。

以上的方案是一种过程式的调式方式。这种方式的优点不言而喻,直接可以通过一个测试就可以分析清楚整个过程,但是这种方式很耗时间,理清楚自己的代码逻辑尚可,而想要理清楚他人逻辑代码则可要难于上青天。

node.js学习总结之调式代码的方法(nodejs基础知识)

单元测试调式方法

单元测试的基本目的是保证某个函数、类或者某个功能模块的正常运作,包括其异常情况的测试验证。而作为程序员最喜欢的验证方式莫过于“打桩”(打桩的含义就是提供假默认数据),这种方式调式起来非常方便,但是有一个不利的地方就是无法再次利用,因为在我们验证正常以后,很多开发人员都会将其注释或者删除,因此如果我们在开发环境开发完成,但我们希望在测试环境验证时,则必须又要重新写一篇打桩逻辑,那么这样看,到现网时,则会更加的麻烦。既然这么多不便,你可以尝试下面的做法。

添加一个单元测试类,这个类需要控制其权限,只有通过后台登录或者是命令行才可以执行,该类承载的作用就是对系统的关键逻辑进行检测,并且做出相应的测试输出结果。要相信所有的接口类都是可以通过单元测试类去完成测试的。很多时候程序员在质疑,这件事情是不是应该我们做?其实还真是需要我们去做,毕竟很多测试现在做的都是黑盒测试。

这种调式方法适合在开发过程中,并且可以保证我们现网的代码发布后运行正常。希望大家在计划开发时间时也将该过程并于开发阶段。

快速定位法

前面两个那么复杂的过程太理想化了?我的代码就只有 行,并且系统也不复杂。如果是这样的话,那么就快速的进行定位分析。很多时候会遇到

1、输入正常,输出异常;

2、输入正常,逻辑异常,输出异常;

3、输入异常,逻辑正常,输出正常;

4、输入异常,逻辑异常,输出无。

在个人的开发过程中,我经常会遇到上面的某种类型的问题,比如在 Node.js 开发过程中,遇到 string.length 提示 string 没有 length 方法。当时就昏头的在问自己,为什么其他 string 都有 length 方法,为什么这个就没有呢?应该很多同学都知道问题就在于这个 string 根本就不是 string ,只是说你自己把它理想化为 string 了,也就是你输入的本来就有问题。那么定位这个问题的最好办法就是打印输入,打印输出即可。

可能其他的程序没有这么简单,但是最基本的就是在主函数中的会遇到异常的函数都进行输入输出判断,那样就可以快速的定位。

切记:不要断章取义,自以为是。

上面的方法以及过程都只是基于 PHP 或者 Node.js 总结出来的,对于 C & C++ 可能存在相似或者相异处。不喜勿喷,且看且珍惜吧。

node.js实现逐行读取文件内容的代码 在此之前先介绍一个逐行读取文件内容NPM:

nodejs之请求路由概述 通常来说对于不同的URL请求,服务器应该有不同的反应。我们要为路由提供请求的URL和其他需要的GET及POST参数,随后路由需要根据这些数据来执行相应

我的Node.js学习之路(一) 一,node.js介绍这些网上一大堆信息,我只精简1,什么是node.js从核心上说:Node.js是个事件驱动的服务器端javascript环境,也就是说,我们可以像使用PHP

标签: nodejs基础知识

本文链接地址:https://www.jiuchutong.com/biancheng/374151.html 转载请保留说明!

上一篇:搭建pomelo 开发环境(怎么创建pom.xml)

下一篇:node.js实现逐行读取文件内容的代码(node 执行js)

  • 非居民个人利息所得个税税率
  • 税收征管法实施细则全文最新
  • 银行存款属于其他货币资金核算内容吗
  • 药品费用开具增值税发票项目应为什么
  • 中小型企业营业额和从业人数
  • 电脑填制记账凭证实训心得
  • 全年交多少税可以退
  • 收不回的款项怎么处理
  • 资产负债表本月期末余额怎么填
  • 房地产公司将自建自用房产出售 土地增值税
  • 房屋租赁收入核定征收
  • 非货币性资产含义
  • 母子公司间资产划拨开免税发票
  • 应付账款坏账处理分录怎么写
  • 期初建账库存少录数量会计怎么处理
  • 支付的劳务派遣服务费现金流量
  • 固定资产一次性计入费用的账务处理
  • 存货的核算心得体会
  • 工程物资建设期间盘盈盘亏
  • 增值税预缴税额可以改吗
  • 原材料实际成本法核算问题
  • 劳务派遣公司差额征税怎么申报
  • w10系统程序停止运行
  • macos usb启动
  • SQL Server2005、2008如何彻底删除卸载并重新安装?
  • win10如何添加网络适配器
  • 大模型训练成本
  • 应税销售额含增值税吗
  • ensmix32.exe进程安全吗 ensmix32进程是什么文件产生的
  • php 算法
  • vue3中使用require
  • 资产划转增值税 开票怎么开
  • 浏览器集成什么意思
  • 个税申报工资比实发工资少,但没超过5000可以举报吗
  • 应收账款和其他应收款的区别
  • 公章的法律效力范围
  • 被黑客攻击
  • 建筑行业工程结算属于什么科目
  • 简易计税办法计算的应纳税额可以抵扣吗
  • 不同会计制度资产负债表金额不一样
  • 卖固定资产计入
  • 在建工程账务核算及处理
  • 增值是指哪几点
  • 政府补助免征企业所得税条件会计分录
  • 存货包括材料成本吗
  • sql server存储过程写法
  • 银行贷款是应付账款吗
  • 自用房地产转换为采用成本模式计量的投资性房地产
  • 工会经费计提比例是应发工资还是实发工资
  • 合伙企业一般纳税人六税两费
  • 流动比率好说明什么
  • 股权转让如何支付利润
  • 会计做账手工帐
  • 存货总账根据什么填列
  • Linq to SQL 插入数据时的一个问题
  • bios怎么恢复出厂设置有什么后果?
  • window系统怎么用
  • xp系统弹出广告怎么处理
  • win10 tab alt
  • mac怎么自己定制
  • centos直接进入命令行
  • wdsvc.exe - wdsvc 是什么进程
  • ubuntu20.04设置共享文件夹
  • mac读取光驱
  • main.exe是什么意思
  • 怎么恢复电脑win7系统
  • 简述android多线程编程的实现方式
  • js datetime
  • jquery插件库怎么导入
  • unity shader ao
  • shell 算数计算
  • 如何解决android兼容问题
  • 解决jQuery ajax请求在IE6中莫名中断的问题
  • 东莞市官网
  • 支持国税普通发展的原因
  • 怎么查个税交了多久
  • 杭州汽车摇号中签率多少
  • 开发商卖商铺需要哪些资质条件?
  • 个人年收入超过多少不能退税
  • 电子税务网上申报平台
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设