北京旷视科技有限公司12月招聘面试题79道20201222

静态检测是利用()和工具在静止状态下测量接触网的技术状态。


参考答案:测量仪器


下列有关软件测试工具的说法中,错误的是______。

A.静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走查和审查

B.静态测试工具可对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持

C.动态测试工具可用于软件的覆盖分析和性能分析

D.动态测试工具不包括软件的仿真测试和变异测试


正确答案:D
解析:测试工具根据工作原理不同可分为静态测试工具和动态测试工具。其中静态测试工具是对代码进行语法扫描,找到不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等。它直接对代码进行分析,不需要运行代码,也不需要对代码编译链接和生成可执行文件,静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走查和审查,也可用于对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持;动态测试工具与静态测试工具不同,它需要运行被测试系统,并设置探针,向代码生成的可执行文件中插入检测代码,可用于软件的覆盖分析和性能分析,也可用于软件的模拟、建模、仿真测试和变异测试等。


以下关于软件测试工具的叙述,错误的是( )。

A.静态测试工具可用于对软件需求、结构设计、详细设计和代码进行评审、走查和审查 B.静态测试工具可对软件的复杂度分析、数据流分析、控制流分析和接口分析提供支持 C.动态测试工具可用于软件的覆盖分析和性能分析 D.动态测试工具不支持软件的仿真测试和变异测试


正确答案:D


黑盒测试工具主要包括( )。

A.静态分析工具

B.动态分析工具

C.性能测试工具

D.功能测试工具


正确答案:CD


静态测试是一种重要的测试方式,可以发现30%到70%的逻辑设计和编码错误。下面( )不属于静态测试?

A.白盒测试

B.代码检查

C.代码质量度量

D.静态分析


正确答案:A


北京旷视科技有限公司12月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:如何在python中使用三元运算符?可用的回答 :三元运算符是用于显示条件语句的运算符。这包含true或false值,并且必须为其评估语句。其基本语法为:三元运算符是用于显示条件语句的运算符。这包含true或false值,并且必须为其评估语句。其基本语法为:on_true if expression else on_false问题 Q2:有哪些工具可以帮助查找错误或执行静态分析?可用的回答 : PyChecker是一个静态分析工具,可以检测Python源代码中的错误,并警告错误的风格和复杂性。 Pylint是另一种验证模块是否符合编码标准的工具。 auto-pep8工具也可以进行静态代码检查 问题 Q3:常见的HTTP状态码有哪些?可用的回答 : 200 OK 301 Moved Permanently 302 Found 304 Not Modified 307 Temporary Redirect 400 Bad Request 401 Unauthorized 403 Forbidden 404 Not Found 410 Gone 500 Internal Server Error 501 Not Implemented 问题 Q4:ngnix的正向代理与反向代理?可用的回答 : 正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容, 客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。 客户端必须要进行一些特别的设置才能使用正向代理。 反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。 客户端向反向代理的命名空间中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求, 并将获得的内容返回给客户端,就像这些内容原本就是它自己的一样。 问题 Q5:简述 OSI 七层协议?可用的回答 : OSI是Open System Interconnection的缩写,意为开放式系统互联。 OSI七层协议模型主要是: 1. 应用层(Application) 应用层 是最靠近用户的OSI层。这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。 2. 表示层(Presentation) 表示层 可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。 例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。 如有必要,表示层会通过使用一种通格式来实现多种数据格式之间的转换。 3. 会话层(Session) 会话层 通过运输层(端口号:传输端口与接收端口)建立数据传输的通路。 主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名) 4. 传输层(Transport) 运输层 定义了一些传输数据的协议和端口号(WWW端口80等),如: TCP(transmission control protocol 传输控制协议,传输效率低,可靠性强,用于传输可靠性要求 高,数据量大的数据) UDP(user datagram protocol用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据 量小的数据,如QQ聊天数据就是通过这种方式传输的) 主要是将从下层接收的数据进行分段和传输,到达 目的地址后再进行重组。常常把这一层数据叫做段。 5. 网络层(Network) 网络层 在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择。 Internet的发展使得从世界各站点 访问信息的用户数大大增加,而网络层正是管理这种连接的层。 6. 数据链路层(Data Link) 数据链路层 定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。 这一层通常还提供错误检测和纠正,以确保数据的可靠传输。 7. 物理层(Physical) 物理层 主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。 它的主要作用是 传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转 换与模数转换)。 这一层的数据叫做比特。 问题 Q6:什么是序列化和非序列化?可用的回答 :Pickle模块接受任何Python对象并将其转换为字符串表示形式,并使用dump函数将其转储到文件中,此过程称为pickling。从存储的字符串表示中检索原始Python对象的过程称为unpickling问题 Q7:列举面向对象中带双下划线的魔术方法可用的回答 : _doc_ 表示类的描述信息 _module_ 表示当前操作的对象在哪个模块 _class_ 表示当前操作的对象的类是什么 _init_ 构造方法,通过类创建对象时,自动触发执行 _new_负责创建一个类的对象 _del_ 析构方法,当对象在内存中被释放时,自动触发执行 _call_ 对象后面加括号,触发执行 _dict_ 类或对象中的所有成员 _str_如果一个类中定义了_str_方法,那么在打印 对象 时,默认输出该方法的返回 问题 Q8:、isinstance作用以及应用场景?可用的回答 : isinstance(obj, cls) 检查一个obj是否是cls的一个对象 问题 Q9:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出;

以下关于软件测试技术中静态分析方法的叙述中( )是正确的。

A.程序设计语言不同,但使用的静态分析工具是相同的

B.静态分析主要包括控制分析、数据流分析、接口分析和表达式分析等

C.静态分析是按照程序内部逻辑结构设计并执行测试用例的方法

D.静态分析只能由人工完成


正确答案:B
虽然软件测试技术在不断地发展,但传统的分类方法仍然适用。按使用的测试技术不同可以将测试分为静态测试和动态测试。进一步地可以将静态测试分成静态分析和代码审查,将动态测试分成白盒测试和黑盒测试。代码审查(包括代码评审和走查)主要依靠有经验的程序设计人员根据软件设计文档,通过阅读程序,发现软件错误和缺陷。代码审查一般按代码审查单阅读程序,查找错误。代码审查的内容包括检查代码和设计的一致性;检查代码的标准性、可读性;检查代码逻辑表达的正确性和完整性;检查代码结构的合理性等。代码审查虽然在发现程序错误上有一定的局限性,但它不需要专门的测试工具和设备,且有一旦发现错误就能定位错误和一次发现一批错误等优点。静态分析主要对程序进行控制流分析、数据流分析、接口分析和表达式分析等。静态分析一般由计算机辅助完成。静态分析的对象是计算机程序,程序设计语言不同,相应的静态分析工具也就不同。目前具备静态分析功能的软件测试工具有很多,如Purify,Macabe等。白盒测试是一种按照程序内部的逻辑结构和编码结构设计并执行测试用例的测试方法。采用这种测试方法,测试者需要掌握被测程序的内部结构。白盒测试通常根据覆盖准则设计测试用例,使程序中的每个语句、每个条件分支、每个控制路径都在程序测试中受到检验。白盒测试需要运行程序,并能在运行过程中跟踪程序的执行路径。软件人员使用白盒测试方法,主要想对程序模块进行如下的检查:·对程序模块的所有独立的执行路径至少测试一次:·对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测试一次:·在循环的边界和运行界限内执行循环体;·测试内部数据结构的有效性等。黑盒测试是一种从软件需求出发,根据软件需求规格说明设计测试用例,并按照测试用例的要求运行被测程序的测试方法。它较少关心程序内部的实现过程,侧重于程序的执行结果,将被测程序看成是不可见的黑盒子,因此被称为黑盒测试。黑盒测试着重于验证软件功能和性能的正确性,它的典型测试项目包括功能测试、性能测试、边界测试、余量测试和强度测试等。黑盒测试主要是为了发现以下几类错误:·是否有不正确或遗漏了的功能?·在接口上,输入能否正确地接受?能否输出正确的结果?·是否有数据结构错误或者外部信息(例如数据文件)访问错误?·性能上是否能够满足要求?·是否有初始化或终止性错误?因此正确答案是B。


软件系统工具的种类繁多,通常可以按照软件过程活动将软件工具分为()

A.. 需求分析工具、设计工具和软件实现工具
B. 软件开发工具、软件维护工具、软件管理王其和软件支持工具
C. 需求分析工具、设计工具、编码与排错工具和测试工具
D. 设计规范工具、产编码工具和验证工具

答案:B
解析:
通常按软件过程活动将软件工具分为软件开发工具、软件维护工具 、软件管理和软件支持工具。 软件开发工具:需求分析工具、设计工具、编码与排错工具。 软件维护工具:版本控制工具、文档分析工具、开发信息库工具、逆向工程工具、再工程工具。 软件管理和软件支持工具:项目管理工具、配置管理工具、软件评价工具、软件开发工具的评价和选择。


UNIX 的源代码控制工具(source Code control System,SCCS)是软件项目开发中常用的()

A.. 源代码静态分析工具
B. 工具
C. 控制工具
D. 再工程工具

答案:C
解析:
版本控制软件提供完备的版本管理功能,用于存储、追踪目录(文件夹)和文件的修改历史,是软件开发者的必备工具,是软件公司的基础设施。版本控制软件的最高目标,是支持软件公司的配置管理活动,追踪多个版本的开发和维护活动,及时发布软件。SCCS是元老级的版本控制软件,也叫配置管理软件。


以下哪一项能最有效地检测到程序中最常见的不恰当的变量初始化问题()。

  • A、使用自动静态分析工具检测这类错误
  • B、使用数据流分析降低这类错误
  • C、对输入进行验证确保输入的数值在允许的范围内
  • D、使用强字符编码

正确答案:A


恶意代码的静态分析方法,是指在不运行恶意代码的情况下,利用反汇编等分析工具,对给定程序的静态特征和功能模块进行分析的方法。


正确答案:正确

更多 “北京旷视科技有限公司12月招聘面试题79道20201222” 相关考题
考题 多选题下面属于支持体系结构分析的工具的是()A支持静态分析的工具B支持类型检查的工具C支持体系结构层次依赖分析的工具D支持体系结构动态特性仿真工具正确答案:B,D解析:暂无解析

考题 静态分析程序和动态测试程序属于软件工具中的哪一类?()A、需求分析工具B、编码工具C、确认工具D、设计工具正确答案:C

考题 判断题恶意代码的动态分析方法,是指在不运行恶意代码的情况下,利用反汇编等分析工具,对给定程序的静态特征和功能模块进行分析的方法。A 对B 错正确答案:错解析:暂无解析

考题 单选题关于工具选项板,下列说法错误的是()。A 工具选项板可以是固定状态,也可以是浮动状态B 工具选项板可以设置自动隐藏C 工具选项板中的内容无法删除D 可以控制工具选项板窗口的透明度正确答案:D解析:暂无解析

考题 问答题有没有一个工具可以帮助查找python的bug和进行静态的代码分析?正确答案:PyChecker是一个python代码的静态分析工具,它可以帮助查找python代码的bug,会对代码的复杂度和格式提出警告。Pylint是另外一个工具可以进行codingstandard检查。解析:暂无解析

考题 单选题关于源代码审核,描述错误的是()A 源代码审核有利于发现软件编码中存在的安全问题B 源代码审核工程遵循PDCA模型C 源代码审核方式包括人工审核工具审核D 源代码审核工具包括商业工具和开源工具正确答案:B解析:暂无解析

考题 单选题关于因果链以下说法错误的是?()A 因果链是一个问题分析的工具B 因果链可以找到隐藏在初始问题背后的深层次问题。C 因果链的过程中,分析可以跳跃性进行,不用分析每一个缺点D 因果链可以用and或者or连接正确答案:B解析:暂无解析

考题 以下关于“插码分析”的说法,错误的是:()A、使用插码分析技术,需要向页面中嵌入一段监测代码,以实现数据的监测和收集B、不同插码分析工具的监测代码可以互相通用C、插码分析工具监测代码都是JS代码,所以在不支持JS的平台上无法使用插码分析技术D、只要在某个网站的首页加入监测代码,插码分析工具就能够对该网站的数据进行收集和分析了E、一般情况下,插码分析技术不适合用于监测服务器状态(比如服务器运行出错等)信息正确答案:B,C,D

考题 单选题静态分析程序和动态测试程序属于软件工具中的哪一类?()A 需求分析工具B 编码工具C 确认工具D 设计工具正确答案:D解析:暂无解析

考题 单选题以下哪一项能最有效地检测到程序中最常见的不恰当的变量初始化问题()。A 使用自动静态分析工具检测这类错误B 使用数据流分析降低这类错误C 对输入进行验证确保输入的数值在允许的范围内D 使用强字符编码正确答案:C解析:暂无解析