51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2340|回复: 2
打印 上一主题 下一主题

[转]Selenium2 Python 自动化测试实战学习笔记 壹

[复制链接]
  • TA的每日心情
    奋斗
    2015-8-28 12:55
  • 签到天数: 29 天

    连续签到: 1 天

    [LV.4]测试营长

    跳转到指定楼层
    1#
    发表于 2016-4-26 10:28:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 frances720 于 2016-4-26 10:37 编辑


    Selenium2 Python 自动化测试实战第一章  自动化测试基础作者:坏蛋是我 转自:CSDN博主

    1.1 软件测试分类

    软件测试 V 模型:

                需求分析---设计---编码

    验收测试--------系统测试---集成测试—单元测试


    单元测试:是对程序中的单个子程序或具有独立功能的代码段进行测试的过程

    集成测试:检查模块之间的接口是否正确

    系统测试:针对整个产品进行系统测试,验证系统是否满足了需求规格的定义,以及软件系统的正确性和性能等是否满足其规约所指定的需求

    验收测试:确保软件准备就绪,向软件购买者展示该软件系统需求满足其用户的需求

    黑盒测试:把软件看做一个黑盒子,我们不去关心盒子里面的结构,只关心软件的输入数据和输出结果。主要针对软件界面和软件功能进行测试

    白盒测试:研究源代码和程序的执行结果。它是按照程序内部的结构测试程序,通过测试来检验产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作

    灰盒测试:既关注输出对于输入的正确性,同时也关注不像白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部运行的状态。

    冒烟测试:是指在对一个新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性

    回归测试:修改了旧代码后,重新进行测试以确认修改后没有引入新的错误或导致其他代码产生错误

    随机测试:是指测试中的所有输入数据都是随机生成的,其目的是模拟用户的真实操作,并发现一些边缘性的错误。

    1.2 分层的自动化测试

                                 UI测试

                                                集成/接口测试

    单元测试

    单元测试:单元测试框架,java的Junint、testNG,C#的Nuit,Python的unittest、pytest等

    在自动化测试中最怕的是变化,因为变化的直接结果就是导致测试用例的运行失败,那么就需要对自动化脚本进行维护;如何控制失败,降低维护成本对自化的成败至关重要。

    UI 层的自动化测试工具非常多,比较主流的是QTP,Robot Framework、watir、Selenium 等。


    1.3 什么样的项目适合自动化测试


    1.4 自动化测试及工具简述

    自动化测试的概念有广义与狭义之分;广义上来讲所有借助工具来进行软件测试都可以称之为自动化测试;从狭义来讲,主要指基于UI层的自动化测试;除此之外还有基代码编写阶段的单元自动化测试,基本集成测试阶段的接口自动化测试。

    1.5 Selenium 工具介绍

         Selenium IDE是嵌入到Firefox浏览器中的一个插件,实现简单的浏览器操作的录制和回放功能。主要应用是快速创建bug重现脚本,在测试人员的测试过程中,发现了Bug之后可以通过IDE将重现的步骤录制下来,以帮助开发人员更容易的重现BUG.

    Selenium Grid:是一种自动化的测试辅助工具,Grid通过利用现有的计算机基础设施,能加快web-app的功能测试。利用Grid,可以很方便地同时在多台机器上和异构环境中并行运行多个测试实例。其特点是:

    1.      并行执行

    2.      通过一个主机统一控制用例在不同环境、不同浏览器下运行

    3.      灵活添加变动测试机

      Selenium RC:支持多种不同的语言编写自动化测试脚本,通过Selenium RC的服务器作为代理服务器去访问应用从而达到测试的目的。Selenium RC 使用分 Client Libraries 和 Selenium Server,Client Libraries 库主要用于编写测试脚本,用来控制Selenium Server的库。Selenium Server 负责控制浏览器行为,总的来说,Selenium Server 主要包括3 个部分:Launcher、Http Proxy、Core。其中Selenium Core 是被Selenium Server 嵌入到浏览器页面中的。其实Selenium Core

    就是一堆JS 函数的集合,就是通过这些JS 函数,我们才可以实现用程序对浏览器进行操作。Launcher 用于启动浏览器,把selnium Core 加载到浏览器页面当中,并把浏览器的代理设置为SeleniumServer 的Http Proxy。

    1.6 前端工具

       FireBug:集HTML查看和编辑、Javascript 控制台、网络状况监视器、cookie 查看于一体,是开发JavaScript、CSS、HTML和Ajax 的得力助手。

    第二章          测试环境搭建2.1 window 下环境搭建

    2.1.1 安装 Python

          访问Python 官方网站:https://www.Python.org/

    2.1.2 安装steuptools 与pip

    setuptools 与pip 下载地址:

    https://pypi.Python.org/pypi/setuptools

    https://pypi.Python.org/pypi/pip

      通过解压工具进行解压将得到两个文件夹,在Windows 命令提示符进入到文件解压目录,通过Python执行安装文件setup.py 进行安装。安装setuptools:

    C:\package\setuptools-7.0>Pythonsetup.py install

    安装pip 的方法与setuptools 相同,切换到pip 解压目录,运行setup.py 文件:

    C:\package\pip-1.5.6>Pythonsetup.py install

    2.1.4ActivePython

       访问ActivePython 下载地址:

    http://www.activestate.com/activePython/downloads

    2.2 编写第一个脚本

    baidu.py

    #codiong=uft-8

    from selenium import webdriver


    driver=webdriver.Chrom()

    driver.get(“http://www.baidu.com”)


    driver.find_element_by_id(“kw”).send_keys(“Selenium2”)

    driver.find_element_by_id(“su”).Click()


    driver.quit()



    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏6
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-6-13 19:20 , Processed in 0.061157 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表