下面是对 Rails Interview Questions 中的
Ruby 部分的解答:
从上面可以看出,其实Proc和lambda都是 Proc 对象。
首先我们来回答第一问:怎么通过某个字段来对对象数组排序?
假设我们有一个对象数组 @users ,我们需要让他对字段 name 排序,则我们可以:
如果是在 ActiveRecord 中,则我们只需:
下面列举我喜欢的几个常用的gems及它的可替代备选方案
首先我们说明一下递归(recursive)和迭代(iterative):
递归 :一个树结构,每个分支都探究到最远,发现无法继续走的时候往回走,每个节点只会访问一次。
迭代 :一个环结构,每次迭代都是一个圈,不会落掉其中的每一步,然后不断循环每个节点都会被循环访问。
由此我们可以看出 ruby 中更加常用的选择是 迭代 ,就像 .each , .times , .map 等都是迭代循环的形式。
ruby之父,松本行弘,日本人
于 2015-03-20
中软国际成都华为事业线软件测试笔试面试经验应聘中软国际外包华为的软件测试需要先经过中软的笔试与面试,通过后才能到华为面试。但听说华为的面试要简单一些。
中软流程:笔试-技术面试-主管面试-人资面试
笔试(网络笔试题):
一:简答
1.简述测试流程.
2.简述你了解的测试类型,并简要描述起应用场景。
3.Bug的生命周期。
4.基于web/winform信息系统 测试时应考虑的因素。
5.画出OSI七层网络结构,TCP/IP五层结构。
6.详细解释IP协议定义,在那个层上面,主要作用?TCP,UDP呢?
二 设计题:
1.为一个用户登录系统的对话框功能设计详细的测试用例。
测试场景:
在各种输入条件下,测试程序的登录对话框功能。
用户名和密码的规则如下:
1).用户名长度为6-10位(包含6,10位)。
2).用户名由字母(a-z,A-Z)和数字(0-9)组成。
3).不能为空,空格和特殊字符。
4).密码规则与用户名相同。
2。使用基本路径测试法为以下程序段设计测试用例。
Void do (int x,int a ,int b)
{
if ((a>1)&&(b=0))
x=x/a
if ((a==2)||(x>1))
x=x+1
}
1).画出程序控制流程图
2).到处基本路径集,确定独立路径,设计测试用例的输入数据与预期输出。
三.编程题。
写一个函数,找出一个整数数组中第二大的数。
技术面试(网络):
由项目经理面试,所问问题:1.自我介绍。2.为什么要从上一家公司离职,为什么来这家公司应聘3简要描述你上一个工作的工作内容,流程,有那些需要改进的地方。4.未来1-3年的职业规划。5.TCP/IP五层结构及其大致作用。6.若测试设备网络出了问题,你会从哪些方面考虑。7.让你对他们提问(主要了解他们的项目情况,需要哪些技能)8.对加班的看法。9.你原先的薪资。
主管面试:
1.家庭情况。2.职业规划 3.问一下你对某件社会事件的看法(如:昆明砍人事件)4.工作中最快乐于最难过的经历。5.说出同事的优缺点。6。自我评价,优缺点。
人资面试:
谈薪资。(经过前面的笔试与面试,会给你初步定下级别,初级中级高级,不同的级别对应不同的薪资水平)
谈妥后会让你等通知,接受华为的面试。
成都华为的面试一般安排在星期二,四。
笔试的都是基本知识。有些人笔试未作完就去参加面试,可见对笔试不是太重视,但也不要太难看。对工作技术能力的考察通过技术面试可以看出来。面试时会根据你在简历上写的东西发问。作华为的项目可能对C 语言,网络比较有要求。脚本语言shell,ruby,python会一种即可。中软外包一般星期1,2,4免费加班到晚上8:30。