1
fyooo 2023-01-10 08:43:15 +08:00
也是大规模协作开发的最可靠技术保障~
|
2
QlanQ 2023-01-10 08:47:06 +08:00
我是菜鸡,真的想问下,网络请求的接口,怎么写测试,数据是怎么造的
如果接口数据有关联如何处理 |
3
jameslam 2023-01-10 08:54:54 +08:00
@QlanQ 前端的话 jest 有 mock 接口的 API ,其他语言同理。看你什么测试,集成测试的话 mock 接口,E2E 用真实接口
|
4
MuscleOf2016 2023-01-10 08:57:13 +08:00
@QlanQ 有单独的接口测试框架或者工具,专门去测接口逻辑什么的,基本只是针对后端接口的。一般这种工具都支持接口关联测试,类似登录返回的信息保存到一个变量,然后下一个接口引用这个变量。然后断言或者其他什么判断接口返回数据是不是满足预期。。
|
5
Rocketer 2023-01-10 09:18:37 +08:00 via iPhone 1
@QlanQ https://jestjs.io/docs/mock-function-api#mockfnmockreturnvaluevalue
作为单元测试,除了被测的方法用真实代码以外,其他依赖(包括同一个类中的其他方法)都应该是模拟的,或者只测试调用其他依赖时的参数是不是预期的。不能因为其他依赖出错导致你的测试失败,否则就不叫单元测试了。 所以一个好的测试程序里面一半以上代码都是在模拟,初学很头疼,学会了很香。 |
6
zzm88104 2023-01-10 09:27:12 +08:00
个人开发者,所写项目(规模都是比较小的)从不写程序测试,只是自己手工真人测试。
请问这个在项目中一般会花多少时间?带来多少好处?值得我投入时间学习吗? 谢谢 |
7
makelove 2023-01-10 09:57:35 +08:00
手工测试一个复杂算法,也得打开 console 一次次调用这个函数,再比对结果,然后改了下算法,再手工做一遍,这效率。。。其实写个单元测试和手工测试一遍工作量差不太多。
对于我自己的 web 项目我只对少部分复杂工具函数 /算法之类写写单元测试,其它的我还是喜欢直接写集成测试,不要写模拟对象隔离测试对象,那个累且对个人项目意义不大,直接对 api 写 http 测试,再查数据库比对结果,这样一个项目的测试代码很少但收到了最大效果。 |
8
WngShhng 2023-01-10 11:35:30 +08:00
同意,特别是下次做大规模重构的时候,跑一下测试用例就可以,对于严谨的开发,测试是第一道保障
|
9
TabGre 2023-01-10 13:42:10 +08:00 via iPhone
前端方面如何编写有效的测试 ,个人感觉只有工具函数可以测试
|
10
kele999 2023-01-10 17:09:17 +08:00
不然呢,不测试直接生产吗
|
11
hst001 2023-01-10 18:17:00 +08:00
理想很丰满现实很骨感。
测试也分很多种,单元测试最简单,维护需要消耗一些时间,集成测试比较复杂,维护需要消耗亿点点时间,如果开发只有一个人,现实的问题是你根本没有多余的时间去维护测试用例,特别是集成测试。 |
13
intmax2147483647 2023-01-10 21:40:16 +08:00
国内大部分大厂程序员都没有写测试的习惯,公司项目管理也没有写测试的要求,全都是依托答辩
|
14
yikyo 2023-01-10 22:05:26 +08:00 via iPhone
单人项目写测试很有用,避免你修改一处之后引起其他的问题,第二可以快速验证,避免自己输入输出进行测试,还是很浪费时间的
|