zoukankan      html  css  js  c++  java
  • 【Python】UI自动化-1

    一、安装selenium和环境配置

    1 pip install selenium

    2 三个驱动文件放到d:盘根目录

    3 安装火狐版本33

    4 安装插件:selenium idefirebugfirepath

    5 下载三个Py程序,分别修改,将路径设定为三个驱动文件所在的路径,然后分别执行,看看是否可以打开浏览器,显示搜狗页面,有一个能成功即可

    【踩坑】

    IE浏览器的话需要设置

    1、  缩放100%

    2、  全勾选或者全不勾选

    二、自动化测试
    1、自动化测试优势:
    (1)重复多次执行时节省时间,提高测试覆盖率
    (2)自动化回归
    (3)规范化过程
    (4)历史文档记录
    2、自动化测试局限性:
    (1)只能发现15%的bug
    (2)不能提高测试有效性,只能提高效率
    (3)不具想象力,没人聪明
    (4)不能取代手工测试
    3、自动化测试的内容:
    (1)测试数据自动生成
    (2)自动化输入
    (3)测试结果自动比较
    (4)测试自动执行
    (5)测试用例的管理
    (6)在线监控
    4、自动化脚本技术:
    (1)线性脚本
    (2)结构化脚本
    (3)共享脚本
    (4)数据驱动脚本
    (5)关键字驱动脚本
    数据驱动脚本示例:程序不变数据变
    data.txt:
    e:\a.txt
    e:\1.html
     
    main.py:
    #encoding=utf-8
     
    with open("data.txt") as fp:
        for i in fp:
            with open(i.strip()) as fp1:
                print fp1.read()
     
     
    关键字驱动脚本示例:通过数据文件中的关键字,调用另一个文件中的函数,实现某个功能。 将测试逻辑按照这些关键字进行分解,形成数据文件,用关键字的形式将测试逻辑封装在数据文件中,测试工具只要能够解释这些关键字即可对其应用自动化
     
    #练习:(1)将data.txt文件中op作为关键字,调用kd.py中的op()方法读取1.txt文件中的所有内容;(2)将data.txt文件中第二、三行数据用","区分,write和read作为操作类型;e:\test4\...作为操作路径;w和r作为操作权限;"glory road is good!"为写入内容;
    kd.py:
    #encoding=utf-8
    def op():
        with open("e:\test4\1.txt") as fp:
            print fp.read()
     
    def write(file_path,mode,content):
        with open(file_path,mode) as fp1:
            fp1.write(content)
     
    def read(file_path,mode):
        with open(file_path,mode) as fp2:
            print fp2.read()
     
    kd2.py:
    #encoding=utf-8
    from kd import *
     
    with open("e:\test4\data.txt") as fp:
        for i in fp:
            if i.find(",")!=-1:
                prams=i.strip().split(",")
                if len(prams)==4:
                    command=prams[0]+"(""+prams[1]+"",""+prams[2]+"",""+prams[3]+"")"
                    print command
                    eval(command)
     
                if len(prams)==3:
                    command=prams[0]+"(""+prams[1]+"",""+prams[2]+"")"
                    print command
                    eval(command)
            else:
                prams=i.strip()
                command=prams+"()"
                print command
                eval(command)
     
    data.txt:
    op
    write,e:\a.txt,w,glory road is good!
    read,e:\a.txt,r
     
    1.txt:
    Process-2:2018-03-31 15:02:31
    glory road is good!
     
    5、使用自动化的一些典型场景:
    (1)大量的回归测试
    (2)注入测试数据
    (3)敏捷开发的TDD模式,行为驱动开发模式
    (4)机械并繁琐的测试
    (5)业务监控
    6、自动化术语:
    (1)框架:整个或部分系统的可重用设计,可以看做是一种应用骨架
    (2)关键字驱动的自动化测试:主要包括被操作对象、操作和值
  • 相关阅读:
    软件测试相关面试
    GET和POST两种基本请求方法的区别
    Fiddler的安装与使用
    idea与eclipse项目相互导入的过程
    Selenium 学习笔记
    面试相关的案例
    idea编译启动报错
    window安装redis无法启动报错
    【001】接口测试-常用工具介绍和使用
    pyinstaller 打包exe相关
  • 原文地址:https://www.cnblogs.com/jingsheng99/p/9062170.html
Copyright © 2011-2022 走看看