应用场景:项目组要将原有SeleniumLibrary写的脚本切换到Selenium2Library(后称S2L)下,但是原来有很多Java写的库,综合考虑认为还是在Jython下跑比较合适。但是安装S2L后,pybot下运行正常,jybot下报No module found错误。

解决问题过程:

1.怀疑Jython没有自动把这些包引进去。查看pythonpath,发现果然没有将第三方的egg包囊括。为了省事儿,将selenium和selenium2library两个模块从各自的egg目录拿出,直接放到了site-package目录下。

2.运行后可以找到库了,但是python带的json包抛了一个错误,仍旧不能运行。

3.但是python的发布包基本上不会有bug,而且,那个产生bug上一行的地方竟然有一行被注释了的老代码,试着还原老代码,注释新代码,旧问题消失。但又产生了新bug。。是在selenium包中。

4.觉得碰到了代码不兼容现象。百度搜索和bing搜索:“jybot selenium” 无任何有意义结果。尝试继续改代码,半小时后放弃,因为产生雪崩效应了。

5.静下心来思索,如果在pybot上运行正确,则说明selenium代码没有大的问题,唯一有可能的是jython引起的区别。可能selenium 用了一些python2.6或者2.7规范中的新语法特性,或者新库,但是目前流行的jython2.5.2版本并不支持。

6.下载了jython2.7的alpha版本安装。

7.运行jybot ,一切OK。

后续思考:

1.问题分析思路还算对路。

2.FQ用google搜索,jython selenium,查阅了StackOverFlow网站上的一些类似问题,终于在一个贴子里找到了跟我类似的问题,并有人给出了同样的解决方式。

3.如果有时间,应该好好看一下jython工作原理。

4.习总书记说:“我们的事业是向世界开放学习的事业。关起门来搞建设不可能成功。我们要坚持对外开放的基本国策不动摇,不封闭、不僵化,打开大门搞建设、办事业。” GFW是不是应该把这些被错误封杀的技术网站都解封了呢?IT工作者都会感谢你们的!

在jybot下跑Selenium2Library的更多相关文章

  1. 在Mac环境下跑汇编

    今天汇编作业做到第七章,就想在Mac下跑自己的asm程序,看到了一个很好的教程: http://www.raywenderlich.com/37181/ios-assembly-tutorial 虽然 ...

  2. ubuntu12.04+fuerte 下跑通lsd-slam——使用usb摄像头

    上一篇介绍了如何使用数据集跑lsd-slam,这篇介绍如何用一个普通的usb摄像头跑lsd-slam,默认ubuntu12.04,fuerte已经安装好,workspace也已设置,如果没有,请参考上 ...

  3. Spark- Spark Yarn模式下跑yarn-client无法初始化SparkConext,Over usage of virtual memory

    在spark yarn模式下跑yarn-client时出现无法初始化SparkContext错误. // :: INFO mapreduce.Job: Task Id : attempt_142829 ...

  4. 《Caffe下跑AlxNet之数据处理过程》

    环境:Windows 最近用Caffe跑了一下AlxNet网络,现在总结一下数据处理部分:(处理过的数据打包链接:http://pan.baidu.com/s/1sl8M5ad   密码:ph1y) ...

  5. hadoop下跑mapreduce程序报错

    mapreduce真的是门学问,遇到的问题逼着我把它从MRv1摸索到MRv2,从年前就牵挂在心里,连过年回家的旅途上都是心情凝重,今天终于在eclipse控制台看到了job completed suc ...

  6. ubuntu12.04+fuerte 下跑通lsd-slam——数据集

    lsd-slam(下载链接:https://github.com/tum-vision/lsd_slam)提供了两种方法,一种是用数据集(下载地址http://vision.in.tum.de/lsd ...

  7. Linux下跑程序,防止命令终端(断网,断电)

    有时候我们在服务器上跑程序,会发现当我们离开窗口时,正在执行的程序中断了,这让人非常郁闷.下面介绍防止程序中断的方法: 新建一个名为yourname的Screen窗口: screen -S yourn ...

  8. caffe学习一:ubuntu16.04下跑Faster R-CNN demo (基于caffe). (亲测有效,记录经历两天的吐血经历)

    兜兜转转,兜兜转转; 一次有一次,这次终于把Faster R-CNN 跑通了. 重要提示1:在开始跑Faster R-CNN之前一定要搞清楚用的是Python2 还是Python3. 不然你会无限次陷 ...

  9. 加载selenium2Library失败---robotframework环境搭建(site-packages下无selenium2library文件夹)

    加载Selenium2library失败,检查D:\Python27\Lib\site-packages 目录下是否有Selenium2Library 目录,没有该目录,事情就尴尬了. 自己安装的版本 ...

随机推荐

  1. python编码问题(1)

    一.字符编码基础 字符编码是计算机对字符的格式化,从而能够在计算机系统中存储与传输. 1.ASCII码 在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态 ...

  2. 【英语】Bingo口语笔记(6) - 表示“迷茫”

  3. 【转】IOS --- OC与Swift混编

    群里大神发的网址,感觉有用就先收录了,暂时没时间看SWIFT,感觉代码简洁,但是可阅读性不是太高,有些代码让系统去判断类型,同样的,我们看代码的时候也得自己去判断类型,或许看多就习惯了,有时间再说吧, ...

  4. 嵌入式 C 语言的可变参数表函数的设计

    首先在介绍可变参数表函数的设计之前,我们先来介绍一下最经典的可变参数表printf函数的实现原理.一.printf函数的实现原理在C/C++中,对函数参数的扫描是从后向前的.C/C++的函数参数是通过 ...

  5. every day english

    job is in your freedom, not your compliance. through no fault of his own. as far as I understand you ...

  6. TortoiseSVN 插件配置及使用方法

    一.安装和配置 TortoiseSVN的下载地址 32bit:TortoiseSVN-1.8.2.24708-win32-svn-1.8.3.msi 64bit:TortoiseSVN-1.8.2.2 ...

  7. python程序中自启动appium服务

    普通启动Appium服务方法:      打开cmd,运行命令: #>appium -a 127.0.0.1 -p 4723 当程序输出如上图信息的时候,表示appium启动成功,此时便可以运行 ...

  8. Struts2注解 特别注意

    1 Struts2注解的作用 使用注解可以用来替换struts.xml配置文件!!! 2 导包 必须导入struts2-convention-plugin-2.3.15.jar包,它在struts2安 ...

  9. Python的数据处理学习(三)

    三.类的继承   Python 的class可以允许从零开始创建一个定制类,就像文章(二)创建Athlete类一样,也可以通过继承现有的其他类类创建一个类,这也包括用List.set和dict提供的p ...

  10. adb device出现error:unknown host service

    最近在windows下使用adb device时,提示“ADB server didn't ACK” & “error: unknown host service”错误. 网上搜索了下,是说a ...