51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1364|回复: 0
打印 上一主题 下一主题

【转】Selenium2 Python 自动化测试实战学习笔记(肆)

[复制链接]
  • TA的每日心情
    奋斗
    2015-8-28 12:55
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    跳转到指定楼层
    1#
    发表于 2016-4-26 10:34:12 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 frances720 于 2016-4-26 10:38 编辑

    3.6  异常

    Python用异常对象(exception object来表示异常情况。遇到错误后,会引发异常。如果异常对象未被处理或捕捉,程序会用所谓的回溯(Traceback,一种错误信息)终止执行。

    Python提供try..except..语句来接收这个异常。

             在python中所有的异常都继承Exception,所以我们可以使用它来接收所有的异常。

        Abnormal.py

                                Try:

                    Open(“abc.txt”,”r”)

                                         Printaa

              Except Exception:

                                         Print “异常了”

    从python2.5版本之后,所有异常类有了新的基类BaseException,Exception同样也继承BaseException,所以我们也可以使用BaseException来接收所有的异常。

    Python直接输出异常信息:

    Abnormal.py

                                Try:

                    Open(“abc.txt”,”r”)

                                         Printaa

              Except BaseException,msg:

                                         Print msg

    在BaseException后面定义msg变量用于接收异常信息,通过print将其打印出来:

    Python中常见的异常:

    BaseException 新的所有异常类的基类

    Exception 所有异常类的基类,但继承BaseException 类

    AssertionError assert 语句失败

    AttributeError 试图访问一个对象没有属性

    IOError 输入输出异常,试图打一个不存的文件(包括其它情况)时引起

    NameError 使用一个还未赋值对象的变量

    IndexError 在使用序列中不存在的所引进引发

    IndentationError 语法错误,代码没有正确的对齐

    KeyboardInterrupt Ctrl+C 被按下,程序被强行终止

    TypeError 传入的对象类型与要求不符

    SyntaxError Python 代码逻辑语法出错,不能执行

    3.6.2更多异常用法

       try...except 与else 配合使用:

    Abnormal.py

                                Try:

                    Open(“abc.txt”,”r”)

                                         Printaa

              Except BaseException,msg:

                                         Print msg
               Else:
                                         Print ‘没有异常!’

    Else语句只有在没有异常的情况下才会被执行,但是有些情况下不管是否出现异常这些操作都能被执行,比如文件的关闭,所得释放,把数据库连接返还给连接池等操作。我们可以使用Try…finally..语句来完成。

    首先创建一个poem.txt文件:

    Pome.txt

    ABC

    EFG

    HIJK

    LMN

    OPQ

    通过一个小程序来读取文件中的内容。

    ReadFile.py

    #coding=utf-8

    Import time


    Files=file(“poem.txt”,”r”)

    Strs=Files.readlines()


    Try:

      For I in strs:

                         Print I

             Time.sleep(1)

    Finally:

             Files.close()

         Print “Clean up…closed the file”

    3.6.3抛出异常

             Python中提供raise方法来抛出一个异常:Abnormal.py

    Filename=raw_input(‘please input filename:’)

    If filename==’hello’:

       Raise NameError(‘input file name error!’)


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏4
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-23 23:19 , Processed in 0.065971 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表