15-测试开发-2
15-测试开发-2
001-关于Python内存管理,下列说法错误的是[单选]
- a: 变量不必事先声明,
- b: 变量无须先创建和赋值而直接使用,
- c: 变量无须指定类型,
- d: 可以使用del释放资源,
答案: B
解析: B
002-HTTP协议属于哪一层[单选]
- a: 应用层,
- b: 链路层,
- c: 表示层,
- d: 传输层,
答案: A
解析: A
003-关于自动化测试的说法,错误的是( )[单选]
- a: 自动化测试不一定适合所有的测试,
- b: 自动化测试可以大幅度降低工作量,
- c: 自动化测试不一定比人工测试更能保障系统的可靠性,
- d: 自动化测试不能完全覆盖到所有的测试类型,
答案: B
解析: B
004-4.python变量的查找顺序为()[单选]
- a: 局部作用域>外部嵌套作用域>全局作用域>内置模块作用域,
- b: 外部嵌套作用域>局部作用域>全局作用域>内置模块作用域,
- c: 内置模块作用域>局部作用域>外部嵌套作用域>全局作用域,
- d: 内置模块作用域>外部嵌套作用域>局部作用域>全局作用域,
答案: A
005-一个函数的入参是一个int类型,但是有效输入只有[0,100]范围的数,如果你要测试这个函数,你会选择以下哪组入参,是最全面且最精简的( )[单选]
- a: 0,50,100,
- b: -1,0,30,100,101,
- c: -1,0,1,25,45,60,99,100,101,
- d: -1,0,1,67,99,100,101,
答案: D
解析: D
006-3.执行下列选项的程序,输出结果与其他三个选项不同的是()[单选]
- a: a = [['1']*3 for i in range(3)]print(a),
- b: b = [['1']]*3print(b),
- c: c=[]for i in range(3):lis = ['1']*3c.append(lis)print(c),
- d: d = []lis = ['1']*3for i in range(3):d.append(lis)print(d),
答案: B
007-以下关于字典操作的描述中,错误的是[单选]
- a: del()用于删除字典或者元素,
- b: clear()用于清空字典中的数据,
- c: len()方法可以计算字典中键值对的个数,
- d: keys()方法可以获取字典的值视图,
答案: D
解析: D
008-Junit测试在单元测试阶段测试,主要用于()。[单选]
- a: 白盒测试,
- b: 灰盒测试,
- c: 黑盒测试,
- d: 确认测试,
答案: A
解析: A
009-关于测试驱动开发,描述错误的是()。[单选]
- a: 测试驱动开发式是一种敏捷开发方法,
- b: TDD需求开发人员学习测试相关知识,
- c: 测试驱动开发不适合使用CMM/CMMI方法,
- d: 测试驱动开发可以和结对编程结合使用,
答案: C
解析: C
010-不属于白盒测试技术的是()[单选]
- a: 语句覆盖,
- b: 判定覆盖,
- c: 猜错法,
- d: 基本路径测试,
答案: C
解析: C
011-Selenium支持多种浏览器,如IE、FireFox、Chrome等。()[单选]
- a: 对,
- b: 错,
答案: A
解析: A
012-在Assert类中断言对象为NULL是()[单选]
- a: assertEquals,
- b: assertTrue,
- c: assertNull,
- d: fail,
答案: C
解析: C
013-为了体现软件的友好易用性,如果用户输入了非法的数据,开发人员通常对该输入在程序中做出相应处理,下列选项中处理方式错误的是()[单选]
- a: 过滤掉不正确的输入,只允许合法输入通过界面,
- b: 直接关闭程序,
- c: 提示错误信息,拒绝不正确的输入,
- d: 允许不正确的输入进入系统,通过调用异常处理程序进行处理,
答案: B
解析: B
014-Java中能在程序中控制垃圾回收在指定时间点进行吗?[单选]
- a: 正确,
- b: 错误,
答案: B
解析: 不能,Java的垃圾回收机制由JVM控制,进行分代回收
015-.以下程序可能的输出结果是:
l = [1,2,3,4,5,6,7] print(l[3:2]) print(l[-5:-3])[单选]
- a: [] [3, 4],
- b: [3, 4] [],
- c: [3, 4] [3, 4],
- d: [] [],
答案: A
解析: A
016-以下代码输出为:list1 =
list2 = list1 list1['1'] = 5 sum = list1['1'] + list2['1'] print(sum)[单选]
- a: 1,
- b: 2,
- c: 7,
- d: 10,
答案: D
解析: D
017-Python3中,下列对程序描述正确的是: lists = [1, 2, 3, 4, 5, 6]
lists.append([7,8,9]) print(lists)[单选]
- a: [1,2,3,4,5,6],
- b: [1,2,3,4,5,6,[7,8,9]],
- c: [1,2,3,4,5,6,7,8,9],
- d: [7,8,9],
答案: B
解析: B
018-2.执行以下程序,输出结果为()a = 0 or 1 and True
print(a)[单选]
- a: 0,
- b: 1,
- c: False,
- d: True,
答案: D
019-Selenium支持桌面应用软件的自动化测试。()[单选]
- a: 对,
- b: 错,
答案: B
解析: A
020-JUnit的特征,不正确的一项是()?[单选]
- a: 用于测试期望结果的断言,
- b: 用于共享共同测试数据的测试工具,
- c: 易于集成到测试人员的构建过程中,JUnit和Ant的结合可以实施增量开发,
- d: JUnit是收费的,不能做二次开发,
答案: D
解析: D
021-声明式事务注解是下面哪一个?[单选]
- a: @Aspect,
- b: @Mapper,
- c: @Repository,
- d: @Transactional,
答案: D
022-通常,初始化一个被测试对象,会在测试类的()中进行。[单选]
- a: tearDown(),
- b: setUp(),
- c: 构造方法,
- d: 任意位置,
答案: B
解析: B
023-在TDD(测试驱动开发)中,以下哪个步骤不是正确的顺序?[单选]
- a: A)写测试 - 失败测试 - 编写代码 - 通过测试 - 重构,
- b: B)写测试 - 编写代码 - 失败测试 - 通过测试 - 重构,
- c: C)编写代码 - 写测试 - 失败测试 - 通过测试 - 重构,
- d: D)写测试 - 通过测试 - 失败测试 - 编写代码 - 重构,
答案: C
解析: C。TDD是一种软件开发的方法论,它强调在编写实现代码之前先编写单元测试,并根据测试结果驱动代码的编写。其基本的开发流程是:先写测试,然后编写代码,最后重构。C是先写代码,所以选C。
024-在Python3环境中,下列程序运行结果为:trupls = [(1, 2), (2, 3, 4), (4, 5)]
lists = [] for tru in trupls: for num in tru: lists.append(num) print(lists)[单选]
- a: [1, 2, 3, 4, 5],
- b: (1, 2, 2, 3, 4, 4, 5),
- c: [1, 2, 2, 3, 4, 4, 5],
- d: (1, 2, 3, 4, 5),
答案: C
解析: C
025-下列关于白盒测试的内容描述不正确的是()。[单选]
- a: 保证一个模块中的主要路径至少被执行1次,
- b: 对所有的逻辑值均需测试真、假两个分支,
- c: 在上下边界及可操作范围内运行所有循环,
- d: 检查内部数据结构以确保其有效性,
答案: A
解析: A
026-Dockerfile中哪个指令不可或缺?[单选]
- a: EXPOSE,
- b: WORKDIR,
- c: FROM,
- d: ENTRYPOINT,
答案: C
解析: C
027-不属于白盒测试的技术是()。[单选]
- a: 路径覆盖,
- b: 判定覆盖,
- c: 边界值分析,
- d: 条件覆盖,
答案: C
解析: C
028-通常情况下,下列关于白盒测试策略的说法中错误的是()[单选]
- a: 桌前检查,单元测试通常由代码的创建者执行,
- b: 代码走查由代码的创建者执行,不需要专门测试人员参与,
- c: 代码的规则检查属于静态分析的内容,
- d: 同行评审通常由软件产品创建者的同行检查该工作产品,识别产品缺陷,
答案: B
解析: B
029-4.在Python3中,下列说法正确的是:sets =
print(sets[2])程序运行结果为:[单选]
- a: 2,
- b: 3,
- c: 报错,
- d: {3},
答案: C
030-下列哪个不是移动APP测试的自动化测试框架?()[单选]
- a: MonkeyRunner,
- b: Appium,
- c: UiAutomator,
- d: Selenium,
答案: D
解析: D
031-以下关于函数的描述,错误的是[单选]
- a: 函数是一种功能抽象,
- b: 使用函数的目的只是为了增加代码复用,
- c: 函数名可以是任何有效的Python标识符,
- d: 使用函数后,代码的维护难度降低了,
答案: B
解析: B
032-对于JFCUnit,以下说法不正确的是()?[单选]
- a: 它是JAVA GUI的测试框架,
- b: 它是JUnit的扩展,用于GUI的测试,
- c: 编写JFCUnit的测试用例需要扩展JFCTestCase,
- d: JFCUnit是Java GUI测试框架和JUnit没有任何关系,
答案: D
解析: D
033-以下不属于API测试工具的是哪个?[单选]
- a: SoapUI,
- b: Postman,
- c: Jmeter,
- d: Selenium,
答案: D
034-在Assert类中断言测试失败是()。[单选]
- a: assertEquals,
- b: assertTrue,
- c: assertSame,
- d: fail,
答案: D
解析: D
035-switch条件计算表达式中是否支持byte?[单选]
- a: 正确,
- b: 错误,
答案: A
解析: Java底层机制来说,Swith只支持int类型,但其他能自动类型转换为int或通过hashCode能处理成int的支持,包括int、byte、short、char、枚举、String和部分包装类
036-Python不支持的数据类型有[单选]
- a: char,
- b: int,
- c: float,
- d: list,
答案: A
解析: A
037-2.以下python代码的输出是什么?numbers = [1, 2, 3, 4]
numbers.append([5,6,7,8]) print len(numbers)[单选]
- a: 4,
- b: 5,
- c: 8,
- d: 12,
答案: B
038-Junit有两个包:()和Junit.extensions。[单选]
- a: Junit.frametest,
- b: Junit.framework,
- c: Junit.amework,
- d: Junit.assert,
答案: B
解析: B
039-关于以下程序输出结果的描述,正确的选项是:
l = [1,2,3,4,5,6,7] print(l.pop(0), len(l))[单选]
- a: 1 6,
- b: 1 7,
- c: 0 7,
- d: 0 6,
答案: A
解析: A
040-如下程序的运行结果为: def func(s, i, j):
if i < j:
func(s, i + 1, j - 1)
s[i],s[j] = s[j], s[i]
def main(): a = [10, 6, 23, -90, 0, 3] func(a, 0, len(a)-1) for i in range(6): print a[i] print "\n"
main()[单选]
- a: 3
0
‐90
23
6
10,
- b: 3
0
‐60
23
6
10,
- c: 6
10
3
0
‐90
23,
- d: 6
10
3
0
-23
23,
答案: A
解析: A
041-下列关于Appium的描述正确的是()[单选]
- a: Appium自动化测试需要重新编译App,
- b: Appium Server 只支持Linux平台,
- c: Appium同时封装了UiAutomator 和Instrumentation,
- d: Appium主要用来对移动App做性能测试,
答案: C
解析: C
042-在软件测试活动中,下列测试行为全部属于测试开发阶段的是()[单选]
- a: 分析测试需求,准备测试数据,
- b: 分析测试需求,设计测试用例,
- c: 设计测试用例,开发测试工具,
- d: 准备测试数据,开发测试工具,
答案: D
解析: D
043-有如下函数定义,执行结果正确的是? def dec(f):
n = 3
def wrapper(*args,**kw):
return f(*args,**kw) * n
return wrapper
@dec def foo(n): return n * 2[单选]
- a: foo(2) == 12,
- b: foo(3) == 12,
- c: foo(2) == 6,
- d: foo(3) == 6,
答案: A
解析: A
044-在Assert类中断言对象为NULL是()。()[单选]
- a: assertEquals,
- b: assertTrue,
- c: assertNull,
- d: fail,
答案: C
解析: C
045-程序的三种基本控制结构是()。[单选]
- a: 过程,子程序,分程序,
- b: 顺序,条件,循环,
- c: 递归,堆栈,队列,
- d: 调用,返回,转移,
答案: B
解析: B
046-在try...catch...finally异常处理语句中,如果在catch代码块中使用return返回,是否会执行finally中的代码?[单选]
- a: 正确,
- b: 错误,
答案: A
解析: 在try...catch...finally异常处理语句中,始终会在方法返回前执行finally中的代码块,一般进行资源清理操作。
047-Git+Jenkins的配合使用在应用中常常用于()[单选]
- a: 瀑布式开发系统,
- b: 公司内部经营管理,
- c: 持续集成和持续部署,
- d: 以上都不是,
答案: C
解析: C
