python错误、调试、测试

1.错误,

    Python内置的try...except...finally用来处理错误十分方便。出错时,会分析错误信息并定位错误发生的代码位置才是最关键的。

   程序也可以主动抛出错误,让调用者来处理相应的错误。但是,应该在文档中写清楚可能会抛出哪些错误,以及错误产生的原因。

        处理错误:try...except...finally

        调用栈:出错的时候,一定要分析错误的调用栈信息,才能定位错误的位置。

        记录错误:

        # err_logging.py

   import logging

   def foo(s):

    return 10 / int(s)

   def bar(s): return foo(s) * 2

   def main():

    try: bar('0')

    except Exception as e:

       logging.exception(e)

   main()

   print('END')

        抛出错误:raise

2.错误,

  print(),assert,logging,pdb,pdb.set_trace(),IDE

  import logging

 logging.basicConfig(level=logging.INFO)

3.单元测试:

  import unittest#源代码导入单元测试模块

 $python -m unittest mytest.py #执行命令

  单元测试可以有效地测试某个程序模块的行为,是未来重构代码的信心保证。

单元测试的测试用例要覆盖常用的输入组合、边界条件和异常。

单元测试代码要非常简单,如果测试代码太复杂,那么测试代码本身就可能有bug。

单元测试通过了并不意味着程序就没有bug了,但是不通过程序肯定有bug。

4.文档测试:

  if __name__=='__main__':

   import doctest

   doctest.testmod()

原文地址:https://www.cnblogs.com/wuchenggong/p/8810560.html