一道测试面试题及解题思路

2010-04-27  柏杰先 

  注明:此实例转载于互联网。     

 最近,因公司测试人员需要,面试了一批人,我出了一道很简单的题目,但是没想到大多数测试面试人员都答不出来或者答不完全,现把题目和答案公布如下,各位网友如果有何高见,请和我联系,一起探讨。

  题目:

  环境:B/S结构

  内容:后台,一个文本框,要求输入5-100个长度的任意格式的字符串;要求输入的字符可以在前台正确的显示。请根据需求设计一组测试数据,根据这组测试数据的测试,可以完整把握功能的正常使用。

  答案:

  长度分别为4,5,6的中文字符串——长度为4不通过,其他通过

  长度分别为50的中文字符串——通过

  长度分别为99,100,101的中文字符串——长度为101不通过,其他通过

  长度分别为4,5,6的英文字符串——长度为4不通过,其他通过

  长度分别为50的英文字符串——通过

  长度分别为99,100,101的英文字符串——长度为101不通过,其他通过

  字符串:<’”&          &”’> ——显示和编辑的时候正常显示

  字符串: 99个空格+“中中中中中中”——通过

  字符串:“中中中中中中”+ 99个空格——通过

  另外,我觉得作为软件测试人员,应该打开思路,逆向思维,这样才可以发现更多缺陷。

410°/3779 人阅读/33 条评论 发表评论

熊志男  2010-04-27

学习学习


苗志伟  2010-04-27

要是偶,基本就看后台的存储类型,和前台的约束一对就ok了。。。

懒人如斯


韩勇  2010-04-27

长度分别为50的英文字符串——通过
不知楼主这条用例有何用?


楮迎春  2010-04-27

陈健: 字符串占用两个字段长度
与数字99的作用是相同的吧?


楮迎春  2010-04-27

如果是任意字符,其他语言符号、数学符号、标点符号等等也应该测试。


陈健  2010-04-27

抱歉。没看清楚。。是5~100的“字符串”不过迎春说得对。!@#¥%……&*()和标点符号也需要测试


李星星  2010-04-27

偶觉得复制粘贴也要测


李星星  2010-04-27

还有在不同的环境上也要测


陈健  2010-04-27

李星星: 偶觉得复制粘贴也要测
汗。。复制粘贴不需要吧。。对于文本框来说粘贴和手动输入是没有区别的。又不是键盘记录器


张东升  2010-04-27

我不太理解为什么最后两个用例可以通过,字符串长度已经超过100了呀,请指点


王廷虎  2010-04-27

有一个特殊的无效等价类是不做任何输入,直接提交。
这里好像没说。


陈健  2010-04-27

王廷虎: 有一个特殊的无效等价类是不做任何输入,直接提交。
这里好像没说。
是哦。。怎么没想到呢


刘俊  2010-04-27

陈健: 汗。。复制粘贴不需要吧。。对于文本框来说粘贴和手动输入是没有区别的。又不是键盘记录器
没区别吗?好好想想


李星星  2010-04-27

陈健: 汗。。复制粘贴不需要吧。。对于文本框来说粘贴和手动输入是没有区别的。又不是键盘记录器
我遇到过的,特殊字符是输入不进去的,但是粘贴是可以的


罗健  2010-04-27

苗志伟:要是偶,基本就看后台的存储类型,和前台的约束一对就ok了。。。

懒人如斯
我一般都采用你这种方法,如果还得设计这么多用例去跑,浪费时间和精力。


陈健  2010-04-27

李星星: 我遇到过的,特殊字符是输入不进去的,但是粘贴是可以的
呃。。。。这样啊~~~长知识了


李星星  2010-04-27

陈健: 呃。。。。这样啊~~~长知识了
偶当时也是很震惊


陈春燕  2010-04-27

任意字符,包括中文、英文、数字、符号等等,还有,这个文本框是否区分单字节和双字节,汉字是双字节,其他的是单字节;用例里除了单纯的输入全部中文或英文,还有混合输入,即中文+英文+数字+符号等。楼主最后的99个空格+“中中中中中中”,如果是任意的字符,那空格也属于字符应该是不过滤的,所以这个要视文本框具体的是否有过滤空格。


袁伦  2010-04-27

字符串:“中中中中中中”+ 99个空格——通过 ?
  这个怎么理解


雷雨  2010-04-27

袁伦: 字符串:“中中中中中中”+ 99个空格——通过 ?
  这个怎么理解
一个字符串加上99个空格=100个字符串吧


夏庆京  2010-04-27

所有特殊字符,英文中文日文法文俄文梵文西伯拉文甲骨文


李文燕  2010-04-27

张东升: 我不太理解为什么最后两个用例可以通过,字符串长度已经超过100了呀,请指点
我也不理解为什么最后两个能pass,请明白的朋友解释一下哈!


陈运琴  2010-04-27

是哦 ,需要明确中文和英文所占字节的长度校验
关于空格:前后空格和中间加空格的处理应该是不一样的


孙明  2010-04-27

个人感觉、个人理解
测的太多了,(1)IE特殊字符:针对前台显示
            (2)特殊需求,如防止数据库注入的特殊字符:针对后台验证
            (3)对空格,进行拷贝,看是否越界:针对前台验证
我认为也就这些了,上面的答案看似很多,也就写文档比较好看吧,呵呵。感觉对软件开发工程师也太不信任了,夸大了测试的作用,呵呵。测的很多,真正可能涉及实质的少,


孙明  2010-04-27

上面说的(3)中的空格就是文本框


左奇  2010-04-28

特殊字符、还可以中文、数字、英文、特殊字符混合在一起输入,还有就是5~100的长度到底是按中文算的还是按英文算的


田庆希  2010-04-28

需要考虑的很多,除了边界值和等价类来编写外,一些其他的特殊字符也要考虑的


宾晟  2010-04-28

补充三个答案,希望楼主不吝赐教:
1. 输入HTML语言,如
<html><a>www.xxx.com</a></html>
应该予以屏蔽,或正常显示,无错误抛出
2. 输入JS脚本
应予以屏蔽,或正常显示,无错误抛出
3. 输入SQL语句
应予以屏蔽,或正常显示,无错误抛出


宾晟  2010-04-28

雷雨: 一个字符串加上99个空格=100个字符串吧
应该是过滤空格吧


汪坤  2010-04-28

要对键盘上所有的特殊字符进行检查控制,防止空字符的产生
空格,&符号,会产生空字符;当然看对应的数据库了
如果都写在存储器里,就更好了


孙明  2010-04-28

汪坤: 要对键盘上所有的特殊字符进行检查控制,防止空字符的产生
空格,&符号,会产生空字符;当然看对应的数据库了
如果都写在存储器里,就更好了
你的方法好像不行,直接复制的话,就可以上去的


孙明  2010-04-28

宾晟: 补充三个答案,希望楼主不吝赐教:
1. 输入HTML语言,如
<html><a>www.xxx.com</a></html>
应该予以屏蔽,或正常显示,无错误抛出
2. 输入JS脚本
我的个人观点:1、我前面说的是《&nbsp分号》这类的字符串,这类是IE特殊字符。
          2、真查JS脚本,要看JS 脚本的位置是否在前面
          3、输入SQL语句,好像没什么关系吧,倒是我觉得应该注意单引号和双引号(要与页面的代码比较),可能造成字符串的丢失(这个比较重要)


游金字  2010-04-28

全用边界值方式写用例或?


登录 后发表评论