使用Calabash的移动测试自动化结构,像'When I enter
当然,测试用例的运行不会和上述一模一样。在第二步中,测试自动化专家进行实际执行:
他们编写由动词触发的技术代码,从技术层面上通过发送信息或点击GUI要素来控制app,收集app的反馈并对反馈做出评价。下面是一则例子:
在解析“测试故事”的代码时,Calabash试着使用正则表达式匹配找出匹配的代码并将之执行。这段代码是由‘When I enter
为了给大量测试用例和移动设备提供有效的测试自动化,有必要创建一个简明通用的测试自动化库(见图3.使用Calabash3的移动测试自动化结构)。该库包含所有可重复使用的步骤定义,要注意,那些步骤定义对于不同设备是可重复使用的,这样它们可以在测试故事中透明使用了。这避免了必须为不同设备多次编写并维护同一测试用例的花费。此外,应该充分将可重复使用的步骤库模块化以区别分别针对特定产品、特定产品线和分支的动词。以这种方式将自动化库模块化可以减少不同项目中部分相同的库并再次将测试自动化的开发花费小化。Calabash满足了我们所有的节省费用的需求(它是一个开源工具,一开始是免费的)和所支持的平台(IOS或Android)。它也能轻易扩大顾客功能。这对我们而言很好,因为Calabash是佳解决方案——但初它只支持本地和混合型app,并不完美。为了使其能支持web app,我们创建了一个可以从Calabash内部控制的web浏览器。这意味着我们能够完全满足顾客需求。
经验
对于成功进行的四个阶段,我们提出了全面的项目计划。重要的阶段是所选解决方案的实验阶段,一个基于Calabash的测试自动化框架。 我们是发现了一些障碍,但是通过使用简单的Calabash拓展可以相当轻松地将之解决。可重复使用性成了一个对我们的顾客来说和节省费用一样很重要的问题。有了Calabash,有可能为ios和Andriod app编写自动化测试用例,为两个平台都重复使用80%的测试代码。Web对象的代码也可以重复用于web app和混合型app,这样再次大大减少了自动化工作。
版权声明:本文出自 SPASVO泽众软件测试网:http://www.spasvo.com/news/html/201569155907.html
原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。