应用场景:项目组要将原有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. 【英语】Bingo口语笔记(51) - 相信怀疑的表达

  2. 【英语】Bingo口语笔记(75) - 元音辅音的辨读

  3. liunx之tar 命令

    tar命令 可以用来压缩打包单文件.多个文件.单个目录.多个目录. Linux打包命令_tar tar命令可以用来压缩打包单文件.多个文件.单个目录.多个目录. 常用格式: 单个文件压缩打包 tar ...

  4. NoSQL架构实践(一)——以NoSQL为辅

    前面<为什么要使用NoSQL>和<关系数据库还是NoSQL数据库>两篇从大体上介绍了为什么要用NoSQL,何时该用NoSQL.经常有朋友遇到困惑,看到NoSQL的介绍,觉得很好 ...

  5. 用list<类>集合接收一个网址返回的一个类的集合的XML

    JavaScriptSerializer serializer = new JavaScriptSerializer(); string json = Share.Helper.HttpRequest ...

  6. bjfu1287字符串输出的大水题

    不多说 /* * Author : ben */ #include <cstdio> #include <cstdlib> #include <cstring> # ...

  7. C语言实现strcat

    首先看看代码: #ifndef STRCAT_H #define STRCAT_H /********************************************************* ...

  8. Python单例模式研究

    方法一 import threading class Singleton(object): __instance = None __lock = threading.Lock()   # used t ...

  9. 【boost】使用装饰者模式改造boost::thread_group

    在项目中使用boost::thread_group的时候遇到几个问题: 1.thread_group不提供删除全部thread列表的方法,一直使用create会是其内部列表不断增加. 2.thread ...

  10. poj 1004 Financial Management

    求平均数,记得之前在杭电oj上做过一个求平均数的题目,结果因为题目是英文的,我就懵逼了 #include <stdio.h> int main() { ; double num; int ...