java - TestNG vs Junit vs Mockito?
问题描述
我很难理解这 3 个之间的区别。不是所有这些测试框架,而不是库吗?如果是这样,我们如何能够结合使用这些?难道我们不能只使用一个测试框架,因为框架决定了代码的控制流,这与我们从代码中调用库代码的库不同。2 个独立的框架如何在同一段代码上协同工作?我观察到 Mockito 经常与 TestNG 结合使用。对于大多数测试场景来说,TestNG 还不够吗?
解决方案
Testng 和 Junit 都是用于单元测试的测试框架。TestNG 类似于 JUnit。几乎没有添加更多的功能,这使得 TestNG 比 JUnit 更强大。
注释JUnit 和 TestNG都使用注释并且几乎所有注释看起来都相似。
TestNG 使用@BeforeMethod ,@AfterMethod 类似于JUnit4 中的@Before ,@After。
…………………………………………………………………………………………………………
Mockito是一个基于 java 的模拟框架,与 JUnit 和 TestNG 等其他测试框架结合使用。
它在内部使用 Java 反射 API 并允许创建服务对象。模拟对象返回一个虚拟数据并避免外部依赖。它通过模拟外部依赖项并将模拟应用到被测代码中来简化测试的开发。
概括
因此,顾名思义,Mockito 用于模拟数据或作为真实对象进行测试的假数据,它的作用就像一个存根或驱动程序,而我们仍然需要 junit 或 testng。而Junit和TestNG是java的单元测试框架
解释教程
https://www.youtube.com/watch?v=eILy4p99ac8
关于 Mockito 的文章
推荐阅读
- python - 配置 GitPython 以输出/记录命令并处理输出
- python - 是否可以修改 Python 中打印到标准输出的内容?
- exception - 尖锐地捕捉异常
- angular - Angular2依赖注入抽象类
- variables - HtmlWebpackPlugin 不会将 pug 变量传递给包含的 pug 文件
- ms-access - 访问:在两个表单之间临时复制值的最佳方式
- memory - 作弊引擎如何知道内存中有什么样的值
- tfs - TFS 查询。返回关联项目
- javascript - 如何组合可观察对象,但在每个对象发生时发出一个值
- python - OpenCV 4.4.0 错误:(-215:Assertion failed) !_img.empty() in function 'cv::imwrite'