测试三角:
v2-b5832cd62a6eb26113e5e3831b6eea0d_1440w.jpg.png
最下面的单元测试效率高,越到上面测试成本越高。
功能测试:某个功能或者特性完成后,测试人员对这个功能或者特性进行验收,一般功能都会比较单一。
设计要领:功能测试就是测试人员介入的第一个阶段,开发人员将完成的功能交给测试人员,测试人员根据这些文档进行开发,设计测试用例,最后执行这些用例。
功能测试以确保应用程序的功能符合需求规范。这是黑盒测试,不涉及应用程序源代码的详细信息。在执行功能测试时,重点应放在应用程序主要功能的用户友好性上。 要首先执行功能测试,我们需要识别测试输入并使用选定的测试输入值计算预期结果。然后执行测试用例,并将实际数据与预期结果进行比较。
我们在测试过程中经常会碰到以下几类问题:
1)、功能文档描述不规范,端到端的用例不准确,造成测试工程师理解偏差。
2)、需求变更,导致功能特性更新,影响了原来的测试用例,这一部份存量的测试用例如果比较多的,势必影响到开发人员的带宽。
3)、新功能不稳定,这样导致用例无法执行。虽然,绝大部分开发人员会进行单元测试,但是单元测试覆盖的范围无法达到功能测试的功能点,导致新功能在刚提测的时候不稳定,使得测试人员花费较长时间在前期。
可以看到,
1)、对于新功能测试来说,如果引入更多的自动化测试,那么测试用例本身的构建和修改一定要非常迅速,并且自动化测试工具要提供快速生成测试用例的能力,以及对需求的变更。
2)、测试工具本身足够的健壮和灵活,可以应对新功能的不稳定而产生的阻塞其他用例的情况。