单元测试和功能测试之间的区别是什么?单元测试也可以测试函数吗?
当前回答
单元测试——测试单个单元,例如类中的方法(函数),模拟所有依赖项。
功能测试——又名集成测试,测试系统中的一部分功能。这将测试许多方法,并可能与数据库或Web服务等依赖项交互。
其他回答
我认为它是这样的:单元测试确定代码执行了您希望代码执行的操作(例如,您想要添加参数A和b,实际上是将它们相加,而不是减去它们),功能测试测试所有代码一起工作以获得正确的结果,因此您希望代码执行的操作实际上在系统中获得了正确的结果。
单元测试: 单元测试特别用于逐个组件地测试产品,特别是在产品开发过程中。 Junit和Nunit类型的工具还将帮助您按照单元测试产品。 **与其在整合之后解决问题,不如在开发早期就解决问题。
功能测试: 就测试而言,主要有两种类型的测试 1.功能测试 2.非功能性测试。
Non-Functional Test is a test where a Tester will test that The product will perform all those quality attributes that customer doesn't mention but those quality attributes should be there. Like:-Performance,Usability,Security,Load,Stress etc. but in the Functional Test:- The customer is already present with his requirements and those are properly documented,The testers task is to Cross check that whether the Application Functionality is performing according to the Proposed System or not. For that purpose Tester should test for the Implemented functionality with the proposed System.
TLDR:
回答这个问题:单元测试是功能测试的一个子类型。
有两大类:功能测试和非功能测试。我发现的最好的(非详尽的)例子是这个(来源:www.inflectra.com):
(1)单元测试:测试小段代码(函数/方法)。它可以被认为是(白盒)功能测试。
当功能放在一起时,你创建了一个模块=一个独立的部分,可能有一个可以测试的用户界面(模块测试)。一旦你有了至少两个独立的模块,然后你把它们粘在一起,然后就来了:
(2)集成测试:当你把两个或多个(子)模块或(子)系统放在一起,看看它们是否能很好地发挥作用。
然后你整合了第3个模块,然后是第4和第5个模块,按照你或你的团队认为合适的顺序,一旦所有的拼图碎片放在一起,就完成了
(3)系统测试:对软件进行整体测试。这差不多就是“所有部件的集成测试”。
如果没问题,那就来吧
(4)验收测试:我们实际构建了客户要求的东西吗?当然,验收测试应该在整个生命周期中进行,而不仅仅是在最后一个阶段,在这个阶段,你意识到客户想要一辆跑车,而你建造了一辆货车。
测试类型
Unit testing - In Procedural programming unit is a procedure, in Object oriented programming unit is a class. Unit is isolated and reflects a developer perspective Functional testing - more than Unit. User perspective, which describes a feature, use case, story... Integration testing - check if all separately developed components work together. It can be other application, service, library, database, network etc. Narrow integration test - double[About] is used. The main purpose is to check if component is configured in a right way Broad integration test (End to End test, System test) - live version. The main purpose is to check if all components are configured in a right way UI testing - checks if user input triggers a correct action and the UI is changed when some actions are happened ... Non functional testing - other cases Performance testing - calculate a speed and other metrics Usability testing - UX ...
(iOS测试) (安卓系统测试)
单元测试通常由开发人员完成。这样做的目的是确保他们的代码正常工作。一般的经验法则是使用单元测试覆盖代码中的所有路径。
功能测试:这是一个很好的参考。功能测试说明
推荐文章
- 为什么Visual Studio 2015/2017/2019测试运行器没有发现我的xUnit v2测试
- 单元测试反模式目录
- ReferenceError: description没有定义NodeJs
- 类未找到:IntelliJ中的空测试套件
- Mockito的argumentCaptor的例子
- 单元测试:日期时间。现在
- 为什么单元测试中的代码不能找到包资源?
- 从导入的模块中模拟函数
- 在单元测试中设置HttpContext.Current.Session
- 何时使用Mockito.verify()?
- 在PHP单元测试执行期间,如何在CLI中输出?
- 单元测试的一些常用命名约定是什么?
- 如何检查动态附加的事件监听器是否存在?
- 强制重新测试或禁用测试缓存
- 如何直接从测试驱动程序调用自定义的Django manage.py命令?