geb是什么
一个浏览器自动化测试的框架,基于selenium框架以及groovy语言
geb的作用
主要是用于页面级别的测试,通过写jQuery的方式,来测试前端
黑盒测试,主要是来测试页面是否正确返回,以及相关页面功能是否正常
替代前端的checklist,代码具有可复制性
geb的问题
由于基于的是浏览器的测试,这块测试的自动化程度有多少?怎么在相关的测试环境来测试?需要相关的测试环境有图形界面?
后续的发展方向?关于黑盒测试部分,自动化程度很受影响,后续的发展? selenium?
geb的使用
基本的代码
1 | Browser.drive{ |
运行该groovy.script,即可进行相关的测试程序
程序说明:
整体的框架基于browser.drive,基于groovy脚本来运行
很重要的依赖因素:Browser 以及drive() method
支持类似jquery的方式来进行相关assert
geb其他方面
- Pages
1 | class SearchPage extends Page { |
通过上述方式,进行相关页面的定义,进行相关页面的操作
Modules
js的相关测试
1 | <html> |
针对这部分的测试案例:
1 | Browser.drive { |
这样可以测试相关js的变量以及相应的运行流程。
这里有有个问题,众多周知,angularjs,形成了一个$scope,这块针对js的测试,可否加入angularjs的支持?
下载方面的测试。
cloud browser testing
这部分,多浏览器的支持?
总结
geb作为黑盒测试部分,确实是个好东西,替代前端测试的checklist部分,同时,针对多浏览器的兼容性方面,应该是未来的一个很好的方向。