摘自https://www.cnblogs.com/sanzangTst/p/7452636.html
一、软件开发的一般流程
二、什么叫软件测试?
软件测试(英语:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
三、软件测试的分类
1:功能测试:检查实际的功能是否符合用户的需求;
2:性能测试:通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试;
3:手工测试:制定case,测试工程师一步一步去测试;
4:自动化测试:把以人为驱动的测试行为转化为机器执行的过程。
四、什么叫自动化测试?
自动化测试一般是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。
五、自动化测试的流程
六、自动化测试的优点
1:对程序的回归测试更方便。这可能是自动化测试最主要的任务,特别是在程序修改比较频繁时,效果是非常明显的;
2:可以运行更多更繁琐的测试;
3:可以执行一些手工测试困难或不可能进行的测试;
4:更好地利用资源,在某些方面解放测试工程师;
5:测试具有一致性和可重复性及测试用例的复用;
6:增加被测试软件的可靠性。
七、自动化测试适应的场景
1:任务测试明确,不会频繁变动;
2:软件需求变更少;
3:项目周期长,测试脚本可以复用。
八、自动化测试常用的工具
1:QTP:主要是用于回归测试和测试同一软件的新版本;
2:Robot Framework:python 编写的功能自动化测试框架,良好的可扩展性;
3:Selenium:是一个用于 Web 应用程序测试的工具,支持多平台、多浏览、多语言去实现自动化测试;
4:Appium:Android/iOS移动端的测试工具,有很好的扩展性;
5:Jmeter:接口,压力测试工具。
九、Selenium简介
1:开源免费软件;
2:支持主流浏览器:FireFox,Chrome,IE;
3:跨平台:windows, linux, Mac;
4:多语言:java, Python,Ruby,Php,JS;
5:对Web支持良好,丰富简单的API。