zoukankan      html  css  js  c++  java
  • 如何用selenium webdriver 捕获js error

    ### 问题

    捕捉页面上js error

    ### 解决办法

    从Selenium webdriver log 中解析

    # -*- coding:utf8 -*-
    
    import unittest
    from selenium import webdriver
    from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
    
    
    class CaptureJSError(unittest.TestCase):
    
        @classmethod
        def setUp(self):
            self.driver = webdriver.Remote('http://yourseleniumgrid:4444/wd/hub',
                                           desired_capabilities=DesiredCapabilities.FIREFOX)
        def test_search_in_python_org(self):
            driver = self.driver
            driver.get("http://foopagewitherr:80")
            logs = driver.get_log('browser')
            for log in logs:
                if log['level'] == 'SEVERE':
                    print log
                    # output is {u'timestamp': 1474618002360, u'message': u'TypeError: $(...).ready_ is not a function', u'level': u'SEVERE'}
    
        @classmethod
        def tearDown(self):
            self.driver.close()
    
    
    if __name__ == "__main__":
        unittest.main()

    Note:

    这里的webdriver是由Selenium Grid提供的,本地webdriver 应该也是可以的

    ### 引用

    https://www.3pillarglobal.com/insights/how-to-capture-javascript-errors-from-your-web-application

  • 相关阅读:
    【C-数据类型 常量 变量】
    【OC简介-类和对象】
    【ios面试总结】
    【OC基础语法考试】
    【C-01关键字】
    UI3
    ui2
    UI
    C++使用shell命令
    字典
  • 原文地址:https://www.cnblogs.com/liangnote/p/5900502.html
Copyright © 2011-2022 走看看