跳转至

编程规范

  • if语句多个条件优先级顺序由高到低:not、and、or
  • 安全加密时禁止使用random模块生成的伪随机数,而使用os模块的urandom()函数

📌 判空

  • 判断变量为None:if var is None
  • 判断变量非空:if var
  • 判断变量为空:if not var
  • 判断浮点型是否相等不能使用==,存在精度问题,可使用if math.close(a, b)

📌 作用域

Python在解析一个被引用的名字时遵循LEGB规则,即local、enclosing、global、builtin

  • local:局部变量,函数内部定义的变量,函数参数
  • enclosing:外层函数的变量
  • global:全局变量,在函数外定义的变量
  • builtin:内置函数,如len()

📌 自动化

自动化代码应当遵循:

  • 确定,明确的执行结果或断言。
  • 密闭,减少外部依赖,排除不确定因素。
  • 清晰,描述清晰,逻辑可读可理解,日志可定位。
  • 复用,测试数据及逻辑合理服用,使代码更简洁易维护。自顶向下,相似的业务逻辑合并,提高重用性。
  • 一致,代码与用例意图、步骤保持一致。

用例步骤应包括:
预置->测试过程->断言->后置

日志级别一般包括:
step-步骤、debug-调试信息、info-上下文、warning-警告、error-错误异常