做一个开发人员认可的测试人员(系列3)--谈谈自动化测试框架
来源:互联网 发布:咫尺网络科技开发公司 编辑:程序博客网 时间:2024/05/21 10:08
Interviewer: Imagine you have eight coins, seven of which weigh the same and one that doesn’t (it’s heavier). You need to use a pair of scales to find out what’s the odd one out.
咋看呢?
A 说不知道的是态度问题,遇到事情就退缩,不是做技术的人该做的。
B 一个个的去称,至少是一个解决办法。但是太慢了。
C 4个和4个去称,对折几次到最后的那个,最快4次,最慢8次。(我就是选的这个)
D 取3个来称,最好的2次,最差的3次。
分析:
Interviewer: Yep, that’s the optimal solution, do you know for N coins how long it’ll take ?
Candidate Fred: About Log N
Interviewer: What base ?
Candidate Fred: Base 3
你看看,逻辑的问题确实是比程序更重要的。
不信,我举一个我工作的例子吧。
第一个 是API方面的
virtual HRESULT __stdcall UpdateNotelog (
/*[in]*/ BSTR NotelogText,
/*[in]*/ VARIANT UpdateNotelogCmd = vtMissing,
/*[in]*/ VARIANT InsertTimestamp = vtMissing ) = 0;/*[in]*/ VARIANT addNervion = vtMissing ) = 0;
这样一个API的入口:
NotelogText: BSTR 标准的String
UpdateNotelogCmd : 1 Update 0 Add vtMissing (Default Add)
InsertTimestamp : 1 insert 0 not insert vtMissing (not add)
addNervion : 1 add 0 not add vtMissing (not add)
这样一套高度Overload的方法,你要全覆盖得多少种呢?
刚开始只考虑0和1 有2X2X2=8
后来vtMissing考虑进去就是27种了....
功能测试就是考验逻辑,设计者的逻辑一定要好。(好到多少情况下看到开发者没看到的。没想到的。)
第二个是 GUI方面的 :
添加喜欢的打印机。在喜欢的打印机为空的时候点击Add,程序会Crash。
C++的老毛病了。
无非就是一个思考的盲点,开发的可以盲,测试的最好别盲。
你看看逻辑对测试人员的要求至少不要低于开发的人员。
本系列将继续,如果大家有兴趣的话,欢迎来我的博客时不时看看,呵呵。
- 做一个开发人员认可的测试人员(系列3)--谈谈自动化测试框架
- 做一个开发人员认可的测试人员(系列2) --谈谈做技术的人的心态问题
- 做一个开发人员认可的测试人员(系列1)--测试是技术活,没技术也能干
- 做一个开发人员认可的测试人员(系列5) ---也谈STAFF的应用
- 做一个开发人员认可的测试人员(系列6)-如何使得机器的性能相当
- 做一个开发人员认可的测试人员(系列7)--外交家的能力
- 做一个开发人员认可的测试人员(系列4) ---也谈内存泄露
- 如何做一个让开发人员看得起的测试人员
- 如何做一个让开发人员看得起的测试人员(转),写的很好。。。
- 【收藏】如何做一个让开发人员看得起的软件测试人员
- 自动化测试人员的定位
- 测试人员如何说服他人认可你提交的缺陷?
- 自动化测试是不是测试人员的核武器
- 自动化测试是测试人员的遮羞布?
- Python---一个简单的自动化测试框架
- 测试人员如何赢得开发人员的尊重
- 测试人员如何赢得开发人员的尊重
- 测试人员如何赢得开发人员的尊重
- 堆和栈的区别
- perl的特殊用法
- Win32程序(1) 小小窗口
- 有效的页面优化因素
- 随感
- 做一个开发人员认可的测试人员(系列3)--谈谈自动化测试框架
- mysql: Too many connections
- mini2440使用uboot(详细)
- 浏览器的特征探测(更新 IE9 的判断)
- Sandy3D 中文类简介
- mysql常用操作
- Hibernate中自带ID的generator的含义
- 快速学日语
- VC2008下提示找不到MSVCP90D.dll的解决办法