PythonUI自动化-1

Posted 下辈子做一只猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PythonUI自动化-1相关的知识,希望对你有一定的参考价值。

一、安装selenium和环境配置

1 pip install selenium

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

3 安装火狐版本33

4 安装插件:selenium ide\\firebug\\firepath

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)关键字驱动的自动化测试:主要包括被操作对象、操作和值

以上是关于PythonUI自动化-1的主要内容,如果未能解决你的问题,请参考以下文章

pythonUI自动化整理

pythonUI自动化-uiautomation

shell 执行顺序

架构,性能

mysql

QT函数抑制python中的测试失败