『心善渊』Selenium3.0基础 — 1.自动化测试概述(一)

(一)软件测试六大模块:

1、功能性测试:

  • ATM机取钱不扣款。
  • 日期格式不正确。
  • web页面的超链接无法打开。
  • 手机正在听音乐时来电不提示。
  • 地铁公交卡刷卡扣款不成功。
  • 手机APP无法正常启动注册。
  • 手机拨号后无法接通对方手机。

2、可用性测试(用户体验)

  • 手机上应用程序运行太慢。
  • 删除一条数据时无二次确认,防止用户误操作。
  • 页面布局很难看。
  • 网站经常出现弹窗广告。
  • 页面字体颜色太刺眼,字体太小。
  • 网页上的超链接显示不明显。

3、性能测试

  • 高并发网页半天打不开,反应很慢。
  • 应用程序运行太久占用内存很大。
  • 08年北京奥运会门票系统崩渍。
  • 12306网站订票系统。
  • Android手机运行不流畅。

4、安全性测试:系统漏洞

系统漏洞和bug之间的区别

  • 我们经常接到骚扰电话。
  • WIFI万能钥匙。
  • 支付宝账户的余额被恶意转走。
  • CSDN网站用户600万数据泄露。
  • 某网站首页被恶意篡改。
  • 手机上的联系人信息被窃取。
  • 网站被大量的用户非法攻击。

5、兼容性测试(客户端兼容性)

技术性要求不高,操作繁琐。

  • 某网页IE和Firefox上显示效果不一样。
  • 中国的插座在欧美无法使用。
  • APP应用程序在某手机上无法安装。
  • 某应用程序在win10上经常卡。

6、可靠性测试

主要测试的是:系统是否稳定,容错性,捕获异常的能力。

测试流程:计划、分析、设计、实施(执行)、总结。

(二)自动化测试的价值:

概念:自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。

1、自动化测试的优势

  • 提高测试执行效率,节约时间成本。
  • 解放人力去做更加重要的工作。
  • 可重复利用,减少对人的依赖。
  • 提升客户满意度。
  • 提升整个软件测试团队的水平。
  • 可大幅减少兼容性测试的工作量。
  • 有些测试工作必须依靠自动化来完成。

2、自动化测试的不足

  • 开发自动化测试脚本需要花费较长周期(2到3倍的时间)。
  • 随着产品的不断迭代,自动化测试脚本也将不断迭代,时间成本高。
  • 不同的项目之间自动化测试脚本的重用度低(接口测试)。
  • 对短期项目型产品实施自动化测试价值不高。
  • 自动化测试无法代替手工测试找到产品的BUG(兼容性和回归测试的时候用)。(重要)
  • 自动化测试开发过程对软件测试团队的技术有较高要求。

3、手工测试VS自动化测试

比较方面 优胜
寻找产品缺陷 手工测试优于自动化测试
纯技术要求 手工测试低于自动化测试
产品的稳定性要求 手工测试低于自动化测试
测试用例的高效性 手工测试优于自动化测试
对测试人才的需求 手工测试同于自动化测试(高手难求)
相互之间的可替代性 手工测试同于自动化测试(互相不可替代)
对测试项目的价值 手工测试同于自动化测试(均非核心价值)

特别提醒:测试的核心价值在于测试的分析与设计。手工测试、自动化测试只是执行手段。

你可能感兴趣的:(『心善渊』Selenium3.0基础 — 1.自动化测试概述(一))