zoukankan      html  css  js  c++  java
  • Python+selenium 【第一章】什么叫ui自动化以及环境搭建

    UI自动化测试概念

      自动化测试概念:是把以人为驱动的测试转化为机器执行的一种过程,它是一种以程序测试程序的过程自动化测试分类:功能自动化测试与性能自动化测试一般IT上所说的自动化测试是指功能自动化测试,通过编码的方式用一段程序来测试一个软件的功能,这样就可以重复执行程序来进行重复测试的目的。

      如果一个软件有小部分功能发生改变,只要修改一部分自动化测试代码,就可以重复对软件进行测试,从而提高测试效率。

    什么样的项目适合UI自动化?

    • 任务测试明确,不会频繁变动
    • 每日构建后的验证测试
    • 比较频繁的回归测试
    • 软件系统界面稳定,变化少
    • 需要在多平台运行相同的测试用例、组合遍历型的测试、大量的重复测试
    • 软件维护周期长
    • 项目进度压力不太长
    • 被测系统软件开发比较规范,能够保证系统的可测试性
    • 具备大量的自动化测试平台
    • 测试人员具备较强的编程能力一般情况下,只要满足如下三个情况就可以开展自动化测试软件需求变更不频繁、项目周期较长、自动化测试脚本可重复使用
     

    自动化什么时候开始介入?

      自动化测试的介入点:一般是在系统测试阶段开始介入,多用于系统测试的回归测试自动化只是测试方式,跟测试阶段无关可以把任何测试工作写一个程序自动化实现都可以称为自动化测试。

      自动化测试流程:可行性分析测试需求分析制定测试计划自动化测试设计测试脚本开发无人职守测试提交测试报告脚本维护阶段

    自动化测试及工具

    • 自动化测试及工具简述:QTP:是quicktestProfessional的简称,是一款商业化的自动化测试工具。提供了强大易用的录制回放功能。支撑B/S、C/S两种架构的软件测试。之前是美科利公司(MercuryInteractie)产品,惠普在2008年收购美科利公司后成为惠普的产品,新版本的QTP改名为UFT
    • Selenium:是一款用于B/S架构的软件测试工具,它支持多平台、多语言、多浏览器去实现自动化测试。
    • RobotFramework:是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。

    Selenium工具介绍

    •   主要功能:测试与浏览器的兼容性,测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。
    •   测试系统功能,创建回归测试检验软件功能和用户需求。
    •   Selenium特点:开源、免费
    •   多语言支持:Python、Java、C#、Ruby、PHP等
    •   多浏览器支持:Firefox、Chrome、IE、Opera
    •   多平台支撑:windows、linux、MAC
    •   对web页面有良好的支撑简单(API简单)、灵活(用开发语言驱动)
    •   支持分布式执行测试用例

    Selenium安装

    •   准备工具如下:python安装包:https://www.python.org/getit/     
    •   PyCharm安装包:http://www.jetbrains.com/pycharm/download/
    •   Selenium安装包:https://pypi.python.org/pypi/selenium
    •   安装方式一:安装python包,选择全部组件(pip、安装过程中配置环境变量)然后执行pipinstall-Uselenium联网安装Selenium
    •   安装方式二:安装python包,选择全部组件(pip、安装过程中配置环境变量)解压selenium-3.13.0.tar.gz,然后用cmd进入解压目录,使用命令Pythonsetup.pyinstall安装Selenium

    驱动下载地址:

    驱动名称  下载地址
    ChromeDriver http://npm.taobao.org/mirrors/chromedriver/
    FireFoxDriver https://github.com/mozilla/geckodriver/releases
    IEDDriver http://selenium-release.storage.googleapis.com/index.html
    MicrosoftWebDriver   https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/

    Python+selenium环境搭建

    webdriver配置(以chromedriver为例):

    配置方式一:

    1)把下载好的chromedriver.exe程序放置到python的安装路径下

    2)在python中代码编写如下即可:driver=webdriver.Chrome()#Firefox、Ie、Edge等

    配置方式二:

    1)把下载好的chromedriver.exe程序放置到python项目中(其它路径也可)

    2)在python中代码编写如下即可:chromePath=chromedriver.exe路径os.environ[‘webdriver.chrome.driver’]=chromePath#geckoie等driver=webdriver.Chrome(executable_path=chromePath)#Firefox、Ie等

    备注:其余浏览器配置更改可查看配置一和二的注释部分。

    项目架构图:

    简单示例

    demo_ui_01.py

    # -*- coding: utf-8 -*-
    # @Time : 2021/12/10 10:14
    # @Author : Limusen
    # @File : demo_ui_01
    
    import os
    from selenium import webdriver
    
    # # 方法一 将驱动python的安装路径下
    # driver = webdriver.Chrome()
    # driver.get("https://www.baidu.com")
    
    # 方法二 指定驱动路径运行
    driver_path = os.path.join(os.path.dirname(os.path.abspath(__file__)),'..','webdriver','chromedriver93.exe')
    driver = webdriver.Chrome(executable_path=driver_path)
    driver.get("https://www.baidu.com")

    总结

    这一章内容主要讲述的是什么叫ui自动化,为什么要做ui自动化以及ui自动化的搭建,有什么不懂的可以及时提问

    下一章节我们将讲述一下元素定位

    欢迎转载,请注明出处:https://www.cnblogs.com/yushengaqingzhijiao/p/15670533.html
  • 相关阅读:
    Centos系统修改时间临时和永久生效
    Oracle数据泵恢复用户数据实例
    Oracle修改用户密码错误次数及解锁用户
    MongoDB的启动与停止
    pip常用命令
    mysql执行拉链表操作
    Python实现人脸识别
    Mysql触发器学习
    WordCount程序
    Java学习--多态
  • 原文地址:https://www.cnblogs.com/yushengaqingzhijiao/p/15670533.html
Copyright © 2011-2022 走看看