首页 > Web开发 > 详细

CasperJS实践笔记(2)

时间:2014-09-14 23:35:47      阅读:392      评论:0      收藏:0      [点我收藏+]

代码本来写在一个JS文件里面,执行方式如下:

casperjs test xxx.js

可是代码超过1500行后,只有我自己看得明白,必须拆分(独立文件&逻辑复用)!

拆分后怎么执行呢?如下:

casperjs test --includes=1.js,2.js,3,js,4.js  testcase_code1.js --xunit=tesecase01_result.xml

文件1.js,2.js,3.js,4.js就是拆分出去的实现代码,testcase_code1.js可以当作是测试用例的执行步骤代码。

 

目前我的测试步骤部分现状是链式调用:

casper.test.begin("xxx", function(){

    casper.start("http://xx.xx.com");

    casper.then(fun_a).then(fun_b).then(fun_c);

    casper.run(function(){
    //    ...
    })
})

 

方法fun_a、fun_b、fun_c的实现都在拆分出去的那些文件。

 

includes包括了一长串文件列表,容易错误;这里有优化的空间,可以从CasperJS的run.js入手增加定制逻辑(根据自己项目的需要,不过我还没有时间去搞这个)

 

附加几句废话:

fun_a这些方法如果放在casper.then里面调用,只能是一个实现形式不能是执行形式;

比如casper.then(fun_a)正确但是casper.then(fun_a(str1, str2))肯定错误!

怎么办呢?不能带参数肯定不方便,其实可以在fun_a实现时搞一个闭包返回function即可。

 

tips:有些方法的实现是闭包,有些方法不是闭包,有点乱。

 

CasperJS实践笔记(2)

原文:http://www.cnblogs.com/andypeker/p/3971836.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!