Selenium 我的 selenium日常调试

yuan · 2017年07月24日 · 最后由 yuan 回复于 2017年09月04日 · 2168 次阅读

简单介绍

看了今早看到的帖子:https://testerhome.com/topics/9460#reply-82139
我也发表一下自己摸索的一些方法

一个简易的 ui 工具

  • 该工具用 wx 库所写,其中的启动 web 就是简单的打开一个浏览器
class ChromeDriver(WebDriver):
    driver = ''

    def __init__(self):
        super(ChromeDriver, self).__init__(executable_path="C:\chromedriver\chromedriver")

    @staticmethod
    def start():
        ChromeDriver.driver = ChromeDriver()
  • 然后关键就是 web 调试 通过上面的图片的一些输入,从而实现点击等事件
@staticmethod
def run(get_way, element_address, list_obj, do_evt, evt_param):
    driver = ChromeDriver.driver
    d = getattr(driver, get_way)(element_address)
    if isinstance(d, list):
        print('对象数量:', len(d))
        print(d)
        d = d[int(list_obj)]
    if do_evt == 'None':
        return
    if do_evt:
        if evt_param:
            getattr(d, do_evt)(evt_param)
        else:
            getattr(d, do_evt)()
    print('调试成功')
    print('--' * 20)

目前是采用简单的反射机制来实现,但是只用到了 find 方法之后 click 和 send_keys,具体其他操作没试过;
思路:遇到特殊的方法时,也可以直接一个按钮实现一个功能的方式来解决

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 4 条回复 时间 点赞

不管你做多少操作, 只要你点击调试, 就直接生成个编译目标文件, 然后直接编译执行就好了.至少需要编译的目标文件这些都是可以自定义的, 只是里面的内容是在 UI 界面上的到的, 但是不放放开些, 用户不见得只是做 element 的调试, 很有可能会包含其他的很多处理, 比如传入数据 操作文件 甚至 连接数据库做操作等, 你的 UI 要做到多复杂才能 handle 这些操作那?

这个工具是需要自己编码吗,还是说在哪里可以下载下来,可以直接使用啊 ,求指点,谢谢。

楼主对 selenium 的研究非常多呀

yuan #4 · 2017年09月04日 Author
凌志 回复

这个工具缺陷比较大,可以参考https://testerhome.com/topics/9897 这个就无压力对这 driver 各种操作了

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册