Python自动化测试

软件测试目的

  • 以最少的人力、物力和时间找出潜在的各种错误和缺陷,保证各种错误和缺陷得以修复,避免软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的商业风险。
  • 同时利用测试过程中得到的测试结果和测试信息,作为后续项目开发和测试过程改进的重要输入,避免在将来的项目路开发和测试中重复同样的错误
  • 采用更加高效的测试管理手段,提高软件测试的效率和软件产品质量。

软件测试流程

自动化分层

  • UI层:基于系统UI界面来实现的自动化测试,是颗粒度最粗,主要关注功能和流程的正常实现,应用Selenium和Appium来实现这个层级的测试技术
  • Service层:接口自动化,主要关注服务系统的接口数据是否正常,逻辑是否正确,引用Requests和HttpClient来实现测试
  • Unit层:单元测试层,颗粒度最小,Junit5和UnitTest来实现的–在中国是开发干的
  • 在实际企业中自动化测试的应用:一定是代码与数据分离,一定是逻辑代码与测试代码分离
  • 程序有思维能力吗?没有,所有的流程,所有的业务实现都是人为组装、拼接、编写实现的

自动化测试的实际接入:

  • 1.常规的回归测试阶段
  • 2接口自动化,在前后端联调之前可以介入实现后端测试

什么场景适合走自动化测试:

  • 1.长期运行的系统,针对项目本省设计一个测试框架(POM设计模式)
  • 2.短平块类系统,针对各类不同项目设计一套测试框架(关键字驱动设计模型)
  • 3.初创团队,讲究一个字,干!先把功能测试做好,在考虑何时开始研发和介入自动化

Selenium

  • 目前业内最为核心的技术就是自动化测试
  • 最为主流的自动化测试技术就是Selenium
  • Appium是基于Selenium继承实现的
  • Selenium本身是FireFox下的一个插件,Selenium IDE,主要用于火狐浏览器的UI操作的录制,可以转化为Java、Ruby、JS语言内容,然后被Google开始关注,chrome浏览器所支持的浏览器驱动,ChromeDriver、IEDriver、SafariDriver…
  • Selenium核心基于Js Core来实现的。
  • Selenium 1.x时代 IDE时代
  • Selenium 2.x时代 webDriver + IDE
  • Selenium 3.x时代 webDriver
  • 在现阶段的测试中,只会使用Selenium+webDriver来实现自动化测试

语法

  • 转义符:\n回车,\r换行,\t字标法,\代表反斜杠
str1 = r'zhang\nsan' #字符串前面加一个r或R表示让字符串原样输出,即里面的转义符不转义
print(str1) #zhangsan
  • 字符串的方法
str1 = 'zhangsan123'
#print(str1.isdigit()) #判断字符串是否为纯数字,是返回True,否则返回False
#print(str1.isupper()) #判断纯大写
#print(str1.islower()) #判断纯小写
#print(str1.isalpha()) #判断是否纯字母
#print(str1.isalnum()) #判断是否字母或数字
#print(str1.index('a')) #返回字母a第一次出现的位置下标
#print(str1.replace('a','u')) #字符串中a全部替换为u
#print(str1.replace('a','u', 1)) #只替换1次
#print(str1.split('a')) #将字符串使用特定的字符分割,以列表的形式返回
#print(str1.replace('a',1)) #分割1次
list1 = ['1','2','3']
#print(''.join(list1)) #可以将列表转化为字符串	输出123
#print('@'.join(list1)) # 输出1@2@3
  • 列表切片
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
#print(list1[0:10])       #[开始下标索引,结束下标索引]	左闭右开原则		输出[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
#print(list1[2:])         #下标为2后面所有的元素		输出[3, 4, 5, 6, 7, 8, 9, 10]
#print(list1[0:-1])       #-1代表倒数最后一个		输出[1, 2, 3, 4, 5, 6, 7, 8, 9]
#print(list1[0:10:2])     #2代表每个2位取一个		输出[1, 3, 5, 7, 9]
  • 列表的方法
list1 = ['a','b','c']
#list1.append('d') # 添加
#list1.pop(0) 	# 删除指定下标的成员
#list1.remove('a') # 删除指定内容的成员
#list1.clear() # 清空列表
#list1.index('b') # 返回指定成员在列表中第一次出现的位置下标
#list1.sort() # 升序
#list1.reverse() # 反序
#list1.count('b') # 统计自定对象的个数

输出的一些方法

#     %d		%整型数值
#     %f		%浮点型数值,F可以大写
#     %e		%用科学计数法表达的数值,E也可以大写
#     %s		%字符串
print('%d'%44)
print('%.2f'%99.9944)  # %.2f意思是保留两位小数
print('%e'%9999999999.99)
print('%s'%'张三')

#    {}		.format(实际值)
print('{}'.
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值