Software Testing - UI自动化测试常用设计模式之策略(Java)

分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net

策略模式也是非常常用的,甚至很多时候它是其他模式的基础。它的思想也特别简单,当初它诞生的原因是为了摆脱大量的if...else...,把每个条件分支做成一个策略类。讲一下在UI自动化中我们怎么做,举一个最简单的例子,比如在某种APP的测试中,大量的Case都需要经过如下的操作步骤:

  1. 打开浏览器

  2. 登录

  3. 创建一个项目

  4. 创建一个组件

  5. 在组件页面上Build一个Feature

  6. 运行Feature并等待运行结束

既然大量的Case都需要执行上面的操作,那我们当然就希望能做到代码复用,所以就写了一个方法来做这个事情。但是我们发现这些步骤中有一个操作是无法预测的,也就是如何Build一个Feature,我们索性把build DAG的操作定义为一个接口,它只有一个方法,就是build(),意思是这个方法要实现Build一个Feature的操作。但具体Build一个什么样的Feature,由子类自己去实现。 

于是我们就有了很多Feature的子类,他们分别实现不同Feature的Build操作。

于是我们就可以创建出这个可以用来复用的方法,这个方法需要传入一个FeatureBuilder的参数。

猜你喜欢

转载自blog.csdn.net/chimomo/article/details/99829290