Selenium + phantomjs使用总结

    下决心终于要写自己的博客了。公司偶用到Selenium, 编写Java自动化测试脚本,就是为了糊弄甲方人员,不过我还是认真的学习一下下。某年某月记之......

    即使总结,也是大杂烩,啥都有了,刚开始免不了看自己感觉不错的文章了:案例:http://blog.csdn.net/smile_miracle/article/details/70817088

    美文:http://www.cnblogs.com/fnng/p/3653793.html?utm_source=tuicool&utm_medium=referral.

    面试题:http://www.cnblogs.com/fnng/p/3653793.html 

    问题记录:

    (1).在写的过程遇到alert事件,因为采用 PhantomJSDriver 无法处理alert事件,无解,我就直接把页面alert去掉,后期自己在瞅瞅(page.onAlert = function(msg) {}, phantomjs是无头浏览器处理alert事件方法)

    (2).用Selenium执行js:

        ArrayList<String> cliArgsCap2 = new ArrayList<String>();
        cliArgsCap2.add("--web-security=false");
        cliArgsCap2.add("--ssl-protocol=any");
        cliArgsCap2.add("--ignore-ssl-errors=true");
        DesiredCapabilities dcaps = new DesiredCapabilities();
        dcaps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY,
                "D:/Program Files/phantomjs-2.1.1-windows/bin/phantomjs.exe");
        dcaps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, cliArgsCap2);
        dcaps.setCapability("phantomjs.page.settings.userAgent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36");
        dcaps.setJavascriptEnabled(true);
        driver = new PhantomJSDriver(dcaps);

        ......

        JavascriptExecutor js = (JavascriptExecutor) driver;
        js.executeScript("page.onAlert = function(msg) {}");
        driver.switchTo().alert().accept();

    (3).页面display="none"的是发现不了的。登陆后注意iframe切换,切换到下一个iframe回到原来的iframe :driver.switchTo().defaultContent();
        driver.switchTo().frame(frame);

    流程:以上代码没有测试过,我是用Selenium IDE插件获取绝大部分代码,然后复制代码进行测试,如果错误进行定位,采用Selenium的8种定位方式进行重新定位。整个测试需要进行登录。

    就不发我自己的写的代码了,深入的不多,说不定那天研究深入还会重写。

   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值