6
不懂就问,各位都是怎么进行单元测试(UT)的?
source link: https://www.v2ex.com/t/786964
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
测试框架推荐?
- Junit
- PowerMock
单元测试的要求是啥样的呢?
如何去组织和具体实施,有木有啥具体标准之类的?
关于测试的其他(性能测试等),如何成为一个合格的测试?
小弟 Java curd boy,希望从事相关行业的大佬不吝赐教,小弟感激涕零,蟹蟹~~
第 1 条附言 · 19 小时 29 分钟前
有木有大厂的大佬,讲讲关于测试的内容呗~~
26 条回复 • 2021-07-03 00:17:57 +08:00
Cbdy 1 天前
Spring 项目:
testImplementation 'org.springframework.boot:spring-boot-starter-test'
非 Spring 项目:
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.2'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
非 Spring 项目:
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.2'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
Rocketer 22 小时 48 分钟前
先写测试程序,输入是什么,输出应该是什么,都准备好。然后正式开始写程序,自己的程序必须能通过自己的测试,才能移交给下一环节。
问题是写单元测试程序的时间比写正是程序的时间还长,出错的程序又是少数,所以虽然书上说单元测试能节约开发时间,但我们没人信。老板不要求,绝对没人写。
问题是写单元测试程序的时间比写正是程序的时间还长,出错的程序又是少数,所以虽然书上说单元测试能节约开发时间,但我们没人信。老板不要求,绝对没人写。
MeatIndustry 20 小时 57 分钟前 via iPhone
@stimw 不光 TDD,还有其他敏捷实践,例如结对编程,也有很大争议。一个个看起来十分美好,实际上做起来寸步难行。在公司就试过 TDD,根本坚持不下去
X0ray 20 小时 52 分钟前
通常来说,以 java web 项目为例,我都是在 service 这一层来做单元测试。其他的工具类也会写下。远远达不到 100%的覆盖率。
我还比较好奇,那些大厂是不是都是严格执行覆盖率审查的。
我还比较好奇,那些大厂是不是都是严格执行覆盖率审查的。
z740713651 12 小时 52 分钟前
python 的我比较熟。。。
python 可以试试这个项目模版生成的项目框架去填业务代码
[https://github.com/AngusWG/cookiecutter-py-package]
```
pip install cookiecutter
cookiecutter https://github.com/AngusWG/cookiecutter-py-package.git
```
单元测试的有 pytest (可选 doctest) doctest 写函数 docstring 用着比较开心的 看着也舒服
然后 CICD 得搞上
每次提交的时候 都能检查代码覆盖率 函数运行速度 响应时间等等
在模版里有都有案例
然后是 python 的代码风格
迫于没得选就 black 代码风格测试
- 单元测试的要求是啥样的呢?
代码覆盖率 80+把
高一点要求 100% 不过分的
框架会帮你多跑几遍函数 在单元测试里设置平均时长和最大时长啥的就好了
- 如何去组织和具体实施,有木有啥具体标准之类的?
提交代码 CICD 过上述的测试+代码风格测试就差不多了 系统级测试让测试工程师去做
标准之类这种可以看开源项目的要求
github 开源项目基本上 Action 都会有提交时要过的测试命令 照着抄就好了
( python 里是 flake8 模版里还有很多奇奇怪怪的插件 也可以都用上)
- 关于测试的其他(性能测试等),如何成为一个合格的测试?
这个我也不会。。。。
写完了发现可能答非所问....大佬们随便看看就好
python 可以试试这个项目模版生成的项目框架去填业务代码
[https://github.com/AngusWG/cookiecutter-py-package]
```
pip install cookiecutter
cookiecutter https://github.com/AngusWG/cookiecutter-py-package.git
```
单元测试的有 pytest (可选 doctest) doctest 写函数 docstring 用着比较开心的 看着也舒服
然后 CICD 得搞上
每次提交的时候 都能检查代码覆盖率 函数运行速度 响应时间等等
在模版里有都有案例
然后是 python 的代码风格
迫于没得选就 black 代码风格测试
- 单元测试的要求是啥样的呢?
代码覆盖率 80+把
高一点要求 100% 不过分的
框架会帮你多跑几遍函数 在单元测试里设置平均时长和最大时长啥的就好了
- 如何去组织和具体实施,有木有啥具体标准之类的?
提交代码 CICD 过上述的测试+代码风格测试就差不多了 系统级测试让测试工程师去做
标准之类这种可以看开源项目的要求
github 开源项目基本上 Action 都会有提交时要过的测试命令 照着抄就好了
( python 里是 flake8 模版里还有很多奇奇怪怪的插件 也可以都用上)
- 关于测试的其他(性能测试等),如何成为一个合格的测试?
这个我也不会。。。。
写完了发现可能答非所问....大佬们随便看看就好
yjxjn 6 小时 3 分钟前
500 强外企路过,公司要求,开发写完代码,开发做 JUNIT 测试,功能测试看情况,如果测试不够,就开发一块做了。
junit 的要求是用 excel 投入数据,然后用 excel 做期待数据和期待值等等,assert 异常这种的之类的,再就是要求覆盖率,必须达到 C1 级别,目标是 100%全覆盖。branch 都要进去,eclipse 的 coverage 要去看 branch 覆盖率,而不是 instruction 的覆盖率,如果达不到 100%,需要分析一下,到底是设计的业务有问题还是代码的问题。
junit 的要求是用 excel 投入数据,然后用 excel 做期待数据和期待值等等,assert 异常这种的之类的,再就是要求覆盖率,必须达到 C1 级别,目标是 100%全覆盖。branch 都要进去,eclipse 的 coverage 要去看 branch 覆盖率,而不是 instruction 的覆盖率,如果达不到 100%,需要分析一下,到底是设计的业务有问题还是代码的问题。
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK