软件测试目的
- 以最少的人力、物力和时间找出潜在的各种错误和缺陷,保证各种错误和缺陷得以修复,避免软件发布后由于潜在的软件错误和缺陷造成的隐患所带来的商业风险。
- 同时利用测试过程中得到的测试结果和测试信息,作为后续项目开发和测试过程改进的重要输入,避免在将来的项目路开发和测试中重复同样的错误
- 采用更加高效的测试管理手段,提高软件测试的效率和软件产品质量。
软件测试流程
自动化分层
- 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'
print(str1)
str1 = 'zhangsan123'
list1 = ['1','2','3']
list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list1 = ['a','b','c']
输出的一些方法
print('%d'%44)
print('%.2f'%99.9944)
print('%e'%9999999999.99)
print('%s'%'张三')
print('{}'.