做测试的除了摸鱼,还有一个永远离不开的话题,自动化测试。那么设计自动化测试用例和脚本,搭建测试框架,必须要熟悉至少一种框架或工具。
从编程语言到框架,还要用到服务器运维,牛逼的大佬为什么牛逼?是的,要会的东西很多,虽然说不是所有都要精通,但是技术栈也要足够全面。
上图的资料都可以在公众号【程序员阿信】中回复66,直接获取,是专门整理给点进这篇文章的朋友,希望能够帮助到想要学习自动化测试的朋友。
其实早在2004年ThoughtWorks公司,一个测试工程师就实现了基于JavaScript代码库的自动化测试工具,Selenium1.0诞生了。
Selenium是一个用于Web应用程序自动化测试框架,模拟真实用户在浏览器操作,支持的浏览器包括IE,Mozilla Firefox,Safari,Google Chrome,Opera等。主要应用与web自动化测试与浏览器的兼容性,校验项目是否能够应用在不同浏览器和操作系统之上。selenium也可用于爬虫
Appium一个开源跨平台的自动化测试工具。支持安卓原生、IOS,混合以及桌面应用程序,同时也支持模拟器(iOS),模拟器(Android)和真实设备(iOS,Android,Windows,Mac)。
appium类库封装了标准Selenium客户端类库,为用户提供所有常见的JSON格式selenium命令以及额外的移动设备控制相关的命令,如多点触控手势和屏幕朝向。appium支持多语言,因为它针对流的几种语言分别开发的相应的appium库。好处就是我们可以选择自己熟悉的语言编写appium脚本。
Robot Framework 的架构是一个通用的验收测试和验收测试驱动开发的自动化测试框架(ATDD)。它具有易于使用的表格来组织测试过程和测试数据
RF支持的类型有:
JMeter是一款纯java编写负载功能测试和性能测试开源工具软件。JMeter小巧轻便且免费,逐渐成为了主流的性能测试工具,是每个测试人员都必须要掌握的工具之一。JMeter 用于进行供能或者性能测试,有可视化的制定测试计划:也提供了多种图形化的测试结果显示方式,使我们能够简单的进行接口测试与性能测试
LoadRunner,是一种预测系统行为和性能的负载测试工具。通过模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner能够对整个企业架构进行测试。企业使用LoadRunner能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。
LoadRunner可适用于各种体系架构的自动负载测试,能预测系统行为并评估系统性能。
unittest是Python单元测试框架,类似于JUnit框架.
unittest的特点:
pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点:简单灵活,容易上手,支持参数化能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)pytest具有很多第三方插件,并且可以自定义扩展,比较好用的如:pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)、pytest-xdist(多CPU分发)等测试用例的skip和xfail处理可以很好的和jenkins集成report框架----allure 也支持了pytest
Requests库是用来发送HTTP请求,接收HTTP响应的一个Python库。Requests库经常被用来 爬取 网站信息。用它发起HTTP请求到网站,从HTTP响应消息中提取信息。Requests库也经常被用来做 网络服务系统的Web API 接口测试。因为Web API 接口的消息基本上都是通过HTTP协议传输的。Python中构建HTTP请求的库有很多,其中 Requests 库最为广泛使用,因为它使用简便,功能强大。Requests库不是Python标准库,而是第三方开发的。所以需要我们安装一下:pip install requests
requests库常用方法:requests.requests()
这些自动化测试工具在做自动化测试的过程中是会用到的,希望这篇文章能够帮助到大家。