1. 首页
  2. 面试题
  3. 软件测试面试题

google面试初级测试工程师

google面试初级测试工程师,会给出以下题目:请候选人测试一个web页面,上面有一个文本输入框,一个计数(count)按钮,用于计算一个文本字符串中大写字母A出现的个数,问题:请设计出一系列字符串用以测试这个web页面。

google面试初级测试工程师

一、典型的测试列表:

  1. “banana”:3 (一个合法的英文字母);
  2. “A”和“a”:1(一个简单的有正常结果的合法输入);
  3. “”:0 (一个简单的结果为0的合法输入);
  4. Null:0 (简单的错误输入);
  5. “AA”和“aa”:2(个数大于1并且所有字母都是A的输入);
  6. “b”:0(一个简单的非空合法输入,结果是0);
  7. “aba”:2(目标字符出现在开头和结尾,以寻找循环边界错误);
  8. “bab”:1(目标字符出现在中间);
  9. space/tabs等:N(空白字符与N个A的混合);
  10. 不包含A的长字符串:N,(其中N大于0);
  11. 包含A的长字符串:N,其中N是A出现的个数;
  12. X\nX字符串:N,其中N是A出现的个数(格式化字符);
  13. {java/C/HTML/JavaScript}:N,N是A出现的个数,(可执行字符或错误,或偶然的代码解释)。

二、更加高级的测试问题会做的事情:

  1. 质疑界面的外观、调色板和对比度。如“这些与相关应用风格一致吗?视力困难的人能使用吗?
  2. 文本框太小了,建议加长以便显示更长的输入字符串。
  3. 考虑这个应用能否在同一台服务器上运行多个实例,会发生多个用户的串扰吗?
  4. 提出疑问“数据会被记录吗”,输入串可能包含地址或其他身份信息。
  5. 建议使用真实数据进行自动化测试,如从词典里或书本里选择;
  6. 提出疑问,“计算足够快吗?在大负载下呢?”
  7. 提出疑问,“该页是可发现的吗?用户怎么找到该页面?”
  8. 输入HTML和JavaScript,看是否会破坏页面渲染;
  9. 询问是对大写还是小写的A计数,还是都包括。
  10. 尝试复制粘贴字符串。

三、还有一些想法更高级,反映了富有经验的、宝贵的测试思维,能够比问题走的更远,他们会这么做。

  1. 意识到计算会通过URL-encode HTTP GET请求传递到服务器,字符串可能会在穿越网络时被截断。因此,无法保证支持多长的URL。
  2. 建议将此应用参数化。为何只对字母A计数呢?
  3. 考虑该应用是否可以被国际化。
  4. 考虑编写脚本或者手工采样来探知字符串长度的上限(通过2的指数递进算法,)确保在此区间内功能正常。
  5. 考虑背后的代码实现。也许有一个计数器遍历该字符串,另一个跟踪已经遇到了多少个A(累加器)。因此,可以在边界值附近变化的个数和字符串的长度来进行测试。
  6. 提出疑问,HTTP POST方法和参数会被黑掉吗?也许有安全漏洞?”
  7. 脚本创建各种有趣的排列组合和字符串特性如:长度、A的个数等组合,动态生成测试输入和验证。

原创文章,作者:若木成林,如若转载,请注明出处:https://www.chinaztest.com/142.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:983512074@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息