python 测试开发面试题

一、中文单项选择题

1.下列哪个语句在Python中是非法的?

A、x = y = z =1                 B、x = (y = z + 1)

C、x, y = y, x                   D、x  +=  y

答案:B

2.关于Python内存管理,下列说法错误的是

A、变量不必事先声明          B、变量无须先创建和赋值而直接使用

C、变量无须指定类型         D、可以使用del释放资源

答案:B. (不先赋值会报错,is not defined)

3、下面哪个不是Python合法的标识符

A、int32                 B、40XL         C、self               D、name

答案:B(合法的标识符不能以数字开头)

4、下列哪种说法是错误的

A、除字典类型外,所有标准对象均可以用于布尔测试

B、空字符串的布尔值是False

C、空列表对象的布尔值是False

D、值为0的任何数字对象的布尔值是False

答案:D (a=0,0, bool(a)为True)

5、下列表达式的值为True的是

A、5+4j >2-3j         B、3>2>2

C、(3,2)<(‘a’,‘b’)     D、’abc’ > ‘xyz’

答案:C (在Py2.x版本中正确,在Py3.x运行错误)

6、Python不支持的数据类型有

A、char      B、int           C、float       D、list

答案:A(python里无char型数据,有string字符串类型;但C语言中有char数据类型)

7、关于Python中的复数,下列说法错误的是

A、表示复数的语法是real + imagej   B、实部和虚部都是浮点数

C、虚部必须后缀j,且必须是小写   D、方法conjugate返回复数的共轭复数

答案:C(复数虚部的后缀也可以是大写的J)

8、关于字符串下列说法错误的是

A、字符应该视为长度为1的字符串

B、字符串以\0标志字符串的结束

C、既可以用单引号,也可以用双引号创建字符串

D、在三引号字符串中可以包含换行回车等特殊字符

答案:B(python因为字符串有长度限制,到了长度就标志字符串的结束)

9、以下不能创建一个字典的语句是

A、dict1 = {}                       B、dict2 = { 3 : 5 }

C、dict3 ={[1,2,3]: “uestc”}         D、dict4 = {(1,2,3): “uestc”}

答案:C(字典的键必须是不变的,而列表是可变的)

10、下列Python语句正确的是:

A、min = x if x< y = y

B、max = x > y ?x:y

C、if (x >y)        print x

D、while True :pass

答案:D

二、英文单项选择题

1、what getsprinted? Assuming python version 2.x()

print type(1/2)

A. int     B. float   C. 0    D. 1   E.0.5

答案:A(在Py3.x的版本中,结果是float型)

2、What getsprinted?()

counter = 1
def doLotsOfStuff():
global counter
for i in (1, 2, 3):
counter += 1
doLotsOfStuff()
print counter
A.1  B.3  C.4  D.7 E.none of the above

答案:C

3、What getsprinted?()

print r"nwoow"

A.new line then the string: woow

B.the text exactly like this: r”nwoow”

C.the text like exactly like this: nwoow

D.the letter r and then newline then the text: woow

E.the letter r then the text like this: nwoow

答案:C(字符串前面加r,表示禁止字符串转义)

4、Which numbersare printed?()

for i in range(2):
print i
for i inrange(4,6):
print i
A.2, 4, 6       B.0,1, 2, 4, 5, 6

C.0, 1, 4, 5     D.0,1, 4, 5, 6, 7, 8, 9      E.1, 2, 4, 5, 6

答案:C

5、What getsprinted by the code snippet below?()

import math
print math.floor(5.5)
A.5  B.5.0  C.5.5  D.6 E.6.0

答案:B

6、Assuming the filename for the code below is/usr/lib/python/person.py and the program is run as: python  /usr/lib/python/person.py

What gets printed?()

class Person:
def__init__(self):
pass
defgetAge(self):
print__name__
p = Person()p.getAge()
A.Person                    B.getAge

C.usr.lib.python.person      D.main      E.Anexception is thrown

答案:D (当内部单独执行模块时,name__的返回值就是__main,当被外部模调用时,返回的是模块的名字,在此即为person)

7、What getsprinted?()

names1 = [‘Amir’, ‘Barry’, ‘Chales’, ‘Dao’]
if ‘amir’ in names1:
print 1
else:
print 2
A.1    B.2     C.An exception is thrown

答案:B

8、What gets printed?()

numbers = [1, 2, 3, 4]
numbers.append([5,6,7,8])
print len(numbers)
A.4     B.5     C.8     D.12     E.An exception is thrown

答案:B(numbers为[1,2,3,4,[5,6,7,8]])

9、What getsprinted?()

kvps = { ‘1’ :1, ‘2’ : 2 }
theCopy =kvps.copy()
kvps[‘1’] = 5
sum = kvps[‘1’]+ theCopy[‘1’]
print sum
A.1    B.2     C.6    D.10    E.An exception is thrown

答案:C(字典的浅拷贝,只拷贝父对象,即theCopy拷贝了kvps,当kvps改变表面时,theCopy不改变相应值)

三、SQL笔试题

用一条SQL语句 查询出每门课都大于80分的学生姓名。表scores如下:

name   kecheng  fenshu

张三     语文       81

张三     数学       75

李四     语文       76

答案:SELECT DISTINCT name FROM grade WHERE name NOT IN(SELECT DISTINCTname FROM grade WHERE score <=80);

更简单的:

SELECT name FROMgrade GROUP BY name HAVING MIN(score) > 80。

四、python笔试题

1, python常见的命令行交互自动化模块有哪些?(2分)

答案:a)Import module

b) Import module1,module2

c) From module import *

d) Frommodule import m1,m2,m3

e) From module import logger asmodule_logger

2,python的底层网络交互模块有哪些?(2分)

答案:socket, urllib,urllib3 , requests, grab, pycurl

3,python网络交互时,二进制打包解包的模块有哪些(2分)

答案:打包:pack(), 解包:upk()

4,python的测试框架有哪些?试列出常用的3个或更多(6分)

答案:unittest, nose,unittest2, doctest, pytest

5,一行把[1,2,3,1,2,3] 中的重复元素剔除。(3分)

答案:list(set([1,2,3,1,2,3]))

6,现在要你使用pyDes(DES加密)和标准库中的namedtuple,假设你之前没有接触过,你如何快速上手?

答案:仔细阅读官方文档中namedtuple库和pyDes的使用。下载pyDes和namedtuple库,借鉴网上的使用教程,摸索实践。

五、shell笔试题(本人未作出,欢迎会的同仁与我讨论!)

文件如下:

cat /etc/passwdroot❌0:0:root:/root:/bin/bash

bin❌1:1:bin:/bin:/sbin/nologin
daemon❌2:2:daemon:/sbin:/sbin/nologin
adm❌3:4:adm:/var/adm:/sbin/nologin
lp❌4:7:lp:/var/spool/lpd:/sbin/nologin
sync❌5:0:sync:/sbin:/bin/sync
shutdown❌6:0:shutdown:/sbin:/sbin/shutdown
halt❌7:0:halt:/sbin:/sbin/halt
mail❌8:12:mail:/var/spool/mail:/sbin/nologin
uucp❌10:14:uucp:/var/spool/uucp:/sbin/nologin
operator❌11:0:operator:/root:/sbin/nologin
games❌12?games:/usr/games:/sbin/nologin
gopher❌13:30:gopher:/var/gopher:/sbin/nologin
ftp❌14:50:FTP User:/var/ftp:/sbin/nologin
nobody❌99:99:Nobody:/:/sbin/nologin
dbus❌81:81:System message bus:/:/sbin/nologin
usbmuxd❌113:113:usbmuxd user:/:/sbin/nologin
vcsa❌69:69:virtual console memory owner:/dev:/sbin/nologin
rpc❌32:32:Rpcbind Daemon:/var/cache/rpcbind:/sbin/nologin
rtkit❌499:497:RealtimeKit:/proc:/sbin/nologin
avahi-autoipd❌170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
abrt❌173:173::/etc/abrt:/sbin/nologin
rpcuser❌29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody❌65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
haldaemon❌68:68:HAL daemon:/:/sbin/nologin
gdm❌42:42::/var/lib/gdm:/sbin/nologin
ntp❌38:38::/etc/ntp:/sbin/nologin
apache❌48:48:Apache:/var/www:/sbin/nologin
saslauth❌498:76:“Saslauthd user”:/var/empty/saslauth:/sbin/nologin
postfix❌89:89::/var/spool/postfix:/sbin/nologin
pulse❌497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
sshd❌74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump❌72:72:?:/sbin/nologin
neil❌500:500::/home/neil:/bin/bashtest❌501:501::/home/test:/bin/bash
yulian❌503:503::/home/yulian:/bin/bash
puppet❌52:52:Puppet:/var/lib/puppet:/sbin/nologin
jboss❌504:504::/home/jboss:/bin/bash
mysql❌27:27:MySQL Server:/var/lib/mysql:/bin/bash
release❌505:505::/home/release:/bin/bash
redis❌496:493:Redis Server:/var/lib/redis:/sbin/nologin
mongodb❌184:492:MongoDB Database Server:/var/lib/mongodb:/sbin/nologin
fang❌506:506::/home/fang:/bin/bash
roundup❌495:491:Roundup Issue Tracker:/var/lib/roundup:/sbin/nologin
exim❌93:93::/var/spool/exim:/sbin/nologin
dial❌507:507::/home/dial:/bin/bash
share❌508:508::/home/share:/bin/bash

请打印出用户目录在/home下面的的用户目录,如下:

欢迎讨论!

作者:沉默的小萝莉
来源:CSDN
原文:https://blog.csdn.net/nadizhong4136/article/details/78443392
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当谈到Python测试相关的面试题时,以下是一些常见的问题和答案: 1. 什么是单元测试? 单元测试是对软件中最小可测试单元进行测试的过程。在Python中,通常使用unittest或pytest等测试框架来编写和运行单元测试。 2. 什么是集成测试? 集成测试是测试多个组件或模块之间的交互是否正常工作的过程。在Python中,可以使用unittest或pytest等测试框架编写和运行集成测试。 3. 什么是功能测试? 功能测试是对整个软件系统的功能进行测试的过程。它模拟用户的实际操作,验证系统是否按照预期工作。在Python中,可以使用Selenium等工具进行功能测试。 4. 什么是Mock对象? Mock对象是在测试过程中用于替代真实对象的虚拟对象。它可以模拟真实对象的行为和返回值,以便进行更方便的测试。在Python中,可以使用unittest.mock模块来创建和使用Mock对象。 5. 什么是覆盖率测试? 覆盖率测试是衡量代码被测试用例覆盖到的程度的指标。它可以帮助开发人员确定哪些代码没有被充分测试,并提供指导改进测试用例的方向。在Python中,可以使用coverage等工具来进行代码覆盖率测试。 6. 什么是持续集成? 持续集成是一种开发实践,通过频繁地将代码集成到共享存储库中,并自动构建、测试和部署应用程序,以确保团队成员的代码能够及时合并和交付。在Python中,可以使用CI/CD工具如Jenkins、Travis CI等来实现持续集成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值