1. 测试工程师的日常工具箱
刚入行测试时,我最困惑的就是每天实际要操作哪些工具。经过三个月实习,发现测试工作远比想象中丰富。功能测试最常用的是Postman和JMeter,前者用于接口调试,后者做性能压测。记得第一次用JMeter做并发测试时,线程组参数设错直接把测试环境搞崩了,后来才明白Ramp-up Period要阶梯式增加。
自动化测试主要用Selenium和Appium。我们组用的是Python+pytest+Selenium的框架,Page Object模式是必须掌握的设计思想。新人常犯的错误是直接在用例里写定位表达式,维护时简直噩梦。建议从一开始就把定位器统一管理,像这样:
python复制# pages/login_page.py
class LoginPage:
username_input = (By.ID, 'username')
password_input = (By.CSS_SELECTOR, '.password-field')
submit_button = (By.XPATH, '//button[@type="submit"]')
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 测试用例设计方法论
2.1 等价类划分实战技巧
注册功能测试时,组长教我用等价类划分法设计用例。比如手机号字段:
- 有效等价类:11位数字、以1开头
- 无效等价类:非数字字符、不足11位、超11位、非1开头
但实际执行时发现个坑:运营商号段会变化(比如新增19x号段),所以有效类要动态更新。我们后来在测试数据工厂里加了号段校验规则:
python复制def is_valid_phone(phone):
pattern = r'^1[3-9]\d{9}$' # 包含所有现有运营商号段
return bool(re.match(pattern, phone))
2.2 边界值分析的隐藏陷阱
测试年龄输入框时,按需求文档设计边界值用例:
- 下限:18
- 上限:60
- 测试点:17,18,19,59,60,61
结果上线后客户投诉:有些地区退休年龄是65岁。这个教训让我明白:
- 要确认需求背后的业务规则
- 边界值可能随政策/地区变化
- 重要边界点要在测试计划中特别标注
