各位都是怎么进行单元测试的?

发表于:2022-7-11 09:23

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:兜兜小猎犬    来源:知乎

  1. 要用什么工具吗?
  需要。比如 Java 中,JUnit 可以帮你编排和执行测试套件,Mockito 可以帮你把不方便执行的部分(比如数据库连接、外部 API 调用)mock 掉。
  如果没有这些工具的支持,编写单元测试的成本会很高,也会减少很多乐趣。
  2. GUI 怎么测?
  我之前写过 web 前端。GUI 可分为两部分:逻辑部分和视觉部分。
  逻辑部分的测试方法和后端是一样的,很方便(包括“点击”等事件都有相应的模拟函数)。所以提倡把尽可能多的逻辑提取为单独的函数进行测试。
  视觉部分有所谓的“Snapshot testing”,即在代码执行、渲染完成后,单元测试框架会把当前的像素输出保存为一张图片,下次执行测试的时候再生成一张图片,对比这两张图片,如果有不同则视为你的改动影响了视觉。但这种测试的假警报很多,感觉实际帮助不是很大。
  3. Unit Test 怎么学?
  其实单元测试主要是理念上要学习的比较多。具体工具使用其实都很简单,用几次就会了。
  关键是在理念层面要明白为什么要写单元测试,如何把组件组织成方便单元测试的架构。关于这一部分,推荐阅读 Robert C. Martin (《代码整洁之道》作者)的“整洁之道”系列著作。
  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号