自动化用例依赖问题,是个伪命题

image1

伪命题,是指那些表面上看似正确,但实际上是错误的、没有意义的或者根本无法验证的命题。

自动化用例,在设计上就不能存在依赖关系,而是用例彼此独立,能够随意并行执行的。

交流群偶尔还是看到有人提出接口自动化用例依赖问题。这个问题反映出了对测试用例这个概念,认识得还不够清晰。测试用例,是由测试标题、前提条件、测试步骤、预期结果组成的最小可执行单元。无论是功能用例还是自动化用例,都要遵循这条基础理论。执行1条用例,只覆盖1个案例,这叫做单一责任原则,保证测试原子性。

用例是由多个步骤组成的。在编写功能用例时,基本都会按照这种方式来写。编写自动化用例,把重点放在代码框架上,反而忽略了基本的概念。比如处理接口依赖,默认把1个接口视为1条用例,然后为了支持接口依赖,想尽各种办法优化框架,实现用例依赖。为什么1个接口就必须是1条用例?事实上,1个接口只能算作1个步骤。

1条用例,1个步骤,1个接口,这是单接口用例。1条用例,多个步骤,每个步骤1个接口,才是多接口用例。接口依赖问题,是步骤依赖问题,不是用例依赖问题。用例依赖问题,是个伪命题。步骤依赖问题比用例依赖问题更容易解决,因为步骤一定是按照先后顺序执行的,无论用例是串行还是并行。