ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

测试随笔

2022-09-13 21:32:43  阅读:308  来源: 互联网

标签:浏览器 python selenium 测试 自动化 随笔 jwchrome


内容一:UI自动化的测试灵魂三问:

   什么是UI自动化测试?

  是人为驱动测试 转换机器自动执行的过程

WebUI自动化 测试 工具  Selenium

手机UI自动化 测试工具 appium

 

测试分类  

       按照软件自动化程度

           手工测试和自动化测试(黑盒自动化)

 

 

   为什么学习UI自动化测试?

需求: 测试被测网站  打开关闭100次+登录多用例  手工测试怀疑人生

解决: 写一个python脚本,控制工具  网站自动执行(自动打开  自动完成业务流程)===》UI自动化(python---》selenium--》浏览器---》网站自动执行)

优点:

1)减少重复工作量+提高测试效率+速度快

2)人力成本+代码重复使用+回归测试

3)针对网站监控   4)测试数据模拟

 

引入UI自动化先决条件

不是万能的(比如安全控件(验证码,在测试环境让开发万用码+Cookie值(保留登录成功状态)))

1遇到大量重复工作量  2需求不变更(稳定) 3项目周期足够长(编写脚本花费时间)

 

缺点:

  1. 成本大(python unittest  selenium 维护成本 )
  2. 项目需求不断变更 不适合自动化

3实际工作中  selenium不可定位元素(验证码 安全控件  非标准html元素)

 

 

 

如何掌握UI自动化测试?

Web自动化工具  selenium   其它(QTP UFT贵)

目标  用selenium 让web网站自动运行  即可

 

经典UI自动化搭配

 

测试脚本 Python+pycharm+selenium+Unittest(python自带测试框架)+驱动(帮助selenium识别浏览器)+浏览器(chrome)+被测的网站

   不关心被测试网站(java  python php 测试对象对我们都是一样的)

内容二:环境:

  建议:放在一套纯净的虚拟机中去

 

全新解压

 

1安装selenium库:(在python上面扩展)

1.1 在线安装(依赖网络+简单)

 

 

1.2 离线安装(pypi网站)

 

 

 

 

 

2安装浏览器和驱动(驱动必须要和浏览器版本进行对应~~)

注意:selenium 能够识别浏览器是有驱动版本选择的

以google chrome(谷歌浏览器)

http://chromedriver.storage.googleapis.com/

 

火狐:根据版本选择驱动

 

https://github.com/mozilla/geckodriver/releases

 

安装浏览器---注意防止浏览器自动更新(浏览器自动更新了 驱动也必须更新)

 

 

浏览器安装结束

 

 

驱动:只要将驱动放在  python安装路径下即可

 

 

 

 

3快速安装被测网站:

(3.1 wamp (自带mysql 确保虚拟机里面没有别的mysql) (windows 服务集成软件类似xampp))(W-windows a-apache  m-mysql  p-php或者jsp)

 

 

 

注意:修改Apache的端口号80  很容易彼得软件占用80==》8081

 

 

搜索 80  =全部改成==》8081

Stop all service ===>start  直到变成绿色  或者黄色即可

 

 

  3.2 将  Discuz网站交给  wamp  网站发布路径即可

 

 

http://localhost:8081/Discuz_X2_SC_UTF8/upload/install/

 

 

 

得出被测网址

http://localhost:8081/Discuz_X2_SC_UTF8/upload/forum.php

 

内容三:  第一个UI自动化例子

例子  使用python控制selenium 工具自动控制chrome/或者Firefox打开 百度

 

安装了 selenium  本质 基于 webdriver对象(有对象调用对象即可)

   对象(媳妇)的名字

  对象的功能(API---方法功能)

API不关心定义  只关心调用

   志玲

  炒菜 做饭

   Webdriver

Chrome()  打开chrome浏览器

Firefox()  打开火狐浏览器

get()  访问网址

maximize_window()

.current_url

title

。。。。很多

 

 

 

学习selenium  过程  就是学习webdriver的API过程

 

目标 拿到selenium这一套API  (工具)测试不同网站即可~~

 

# 一个函数  打开chrome浏览器

 

 

 

 

#  导包  alt和enter

from time import sleep

 

from selenium import webdriver

 

 

def open_chrome():

    # 严格区分大小写

    jwchrome=webdriver.Chrome() # 去找 python安装路径下驱动  调度Chrome浏览器

    # 操作jwchrome相当于操作Chrome浏览器

    jwchrome.get("http://www.baidu.com")

    jwchrome.maximize_window() #浏览器最大化

    # 验证:被测网站是否登录成功 打印当前的

    # 当前浏览器地址   current_url

    # 当前浏览器标题  title

    print("浏览器当前的地址",jwchrome.current_url)

    print("浏览器当前的标题", jwchrome.title)

    #from time import sleep

    sleep(3)

    #等待后退出

    jwchrome.quit()

 

 

def open_Firefox():

    # 严格区分大小写

    jwchrome=webdriver.Firefox() # 去找 python安装路径下驱动  调度Chrome浏览器

    # 操作jwchrome相当于操作Chrome浏览器

    jwchrome.get("http://www.baidu.com")

    jwchrome.maximize_window() #浏览器最大化

    # 验证:被测网站是否登录成功 打印当前的

    # 当前浏览器地址   current_url

    # 当前浏览器标题  title

    print("浏览器当前的地址",jwchrome.current_url)

    print("浏览器当前的标题", jwchrome.title)

    #from time import sleep

    sleep(3)

    #等待后退出

    jwchrome.quit()

 

if __name__ == '__main__':

#调用函数

    #open_chrome()

    open_Firefox()

 

 

小结:

  1. UI自动化优缺点(面试)
  2. Selenium环境搭建以及被测网站搭建
  3. 第一个脚本自动化打开关闭  浏览器

标签:浏览器,python,selenium,测试,自动化,随笔,jwchrome
来源: https://www.cnblogs.com/Dubravka/p/16690915.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有