2016阿里巴巴校园招聘测试开发工程师笔试附加题(含部分答案)

附加题-2016校招-测试开发工程师

 

1.一个英文句子,去掉空格和所有标点符号得到一个字符串。给定一个包含各种单词的字典,请编写程序,将该字符串用空格重新按单词分开(不考虑标点符号),并给出测试用例验证程序的正确性,尤其是在特殊情形下的表现。例如:abrownfoxjumpsoveralazydog,插入空格分割单词后得到:a brown fox jumps over a lazy dog。

 

 

2.公司的汇报结构是树型的,假设员工表包含三个字段:id, name, manager_id。现在有N个任意选出的员工,请编写程序,将这N个员工以符合其组织结构的形式展示,并请给出一些典型的测试数据。下图是一个实例,当N=7时的7个员工S1 – S7的树形展示。A-D及X是这N个人之外的员工的ID,表示S1,S2是A的下属,B是A的下属,S3是B的下属,等等。

 

3. 为如下代码设计测试集,分别达到100%的行覆盖(statementcoverage)、分支覆盖(branchcoverage)、路径覆盖(pathcoverage)、条件覆盖(conditioncoverage)。

解答:

根据题目要求,达到100%的行覆盖(statement coverage)、分支覆盖(branch coverage)、路径覆盖(path coverage)、条件覆盖(condition coverage)

的测试集必须覆盖以下8种组合:

1.a>1,b=0       

2.a>1,b<>0

3.a<=1,b=0

4.a<=1,b<>0

5.a=2,x>1

6.a=2,x<=1

7.a<>2,x>1

8.a<>2,x<=1

其中,第1至第4组合表示了第一个if语句的值,第5至第8组合表示了第二个if语句的值,由于x可能在该if语句之前发生了改变,

因此第二个if语句所需的值必须对程序逻辑进行回溯,以找到相对应的输入值。下面设计4个测试用例来覆盖它们:

a=2,b=0,x=4 覆盖组合1,5

a=2,b=1,x=1 覆盖组合2,6

a=1,b=0,x=2 覆盖组合3,7

a=1,b=1,x=1 覆盖组合4,8


如需更多更全的各大公司求职面试试题及资料,可联系博主【2516605455,博主的企鹅】,博主给你分享!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Web魔法师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值