2 Star 2 Fork 2

Liaoht / seleniumRobot

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

项目名称: seleniumRobot自动代理测试系统

一、介绍

1、项目背景:

目前许多WEB应用系统测试工作单调重复,只需要设计好测试案例,就可以机械化的执行测试。其实,手工重复点击测试的动作可以由系统替代执行,测试人员只需要设计好测试案例,具体的执行是可以批量自动化进行的。

2、项目介绍:

seleniumRobot自动代理测试系统是基于Python编写的一个selenium自动化测试工具,可以替代开发或者测试人员对指定的目标站点进行自动访问测试,系统总共分为6个功能模块。系统不做数据持久化记录,无需链接数据库,使用方式简单快捷,适合IT测试人员使用以及进行二次功能开发。具体现实功能如下:

1)、通过配置目标站点,可以替代人工手动方式对目标网站进行自动访问,模拟人工访问进行系统稳定性测试;
2)、可以配置指定的免费代理IP公开网站,系统从免费IP代理网站中抓取免费IP地址,并测试IP可用性。如果IP可用,则通过IP对目标站点进行代理访问,实现高仿的随机点击访问测试;
3)、可以设置不同的时间段进行运行访问,不需要人工监控,可实现全天24小时不间断执行访问脚本;
4)、可以同时配置多个目标站点进行自动访问测试,结合测试案例的请求参数配置,可以执行不同的测试案例;

二、软件架构

1、main模块:

程序运行主口入,通过from .. import语句引入其他五个功能模块。程序外层是一个while无限循环,内部通过_conf类模块的visit_time函数指定需要执行的时间段,也可以设置全天时段。如果需要执行,则通过_proxies模块的scraw_proxies抓取代理IP,然后调用_ipcheck检测类的check方法检测IP是否正常可用,如果IP可用,则调用 _visit核心功能模块的proxy_visit方法对目标站点进行访问;

2、Lib/_chrome模块:

次模块是Chrome浏览器访问参数配置类,需要定义chromeOptions的参数选项,其中userAgentlist数组是代理访问的请求头参数,可以定义多个不同版本的浏览器。url是一个参考网站,用于检测IP地址的可用性。其外,headers请求头还设置了Accept、Accept-Encoding的请求配置。使用该类之前,需要安装谷歌的Chroem浏览器,并下载对于版本Chrome驱动(http://npm.taobao.org/mirrors/chromedriver/ ),然后将驱动包分别放置到Chrome浏览器和Python的跟目录下。

3、Lib/_conf模块:

该配置模块主要定义了一个target_urls数组,用于放置需要访问的目标站点,可以按实际需求添加多个。另外提供了一个visit_time函数用于判断是否在指定的时间段内,如果是则返回true,反之则返回Flase;

4、Lib/_ipcheck模块:

该模块提供的check函数功能主要是通过requests模块的get函数检测抓取的免费代理IP是否可用,如果可用,则将IP加入到数组中,最后返回可用IP,如果不可用则忽略IP;

5、Lib/_proxies模块:

http://www.xicidaili.com/nn/ 公开网站中自动抓取免费代理IP地址,并封装成数组格式返回结果。其中page_num参数这个免费代理IP的查询分页参数,我们默认使用第1页的IP,其他Page页的IP可能存在过期的情况,建议抓取使用最新的IP记录。

6、Lib/_visit模块:

自动测试访问功能类,遍历所有参入的可用IP,进行二次检测,需要设置driver.set_page_load_timeout(30)和driver.set_script_timeout(30)这两种参数,如果请求异常,则弃置IP并打印异常日志,反之将IP封装到一个数组集合中;在这个模块中我们给Chrome浏览器设置了--proxy-server这个代理访问的参数,对目标网站进行自动代理访问。

三、安装教程

1.在自己使用的本地电脑中安装Python运行环境,具体参考百度知道:https://jingyan.baidu.com/article/cb5d6105a32b5f005c2fe0ea.html

2.通过JetBrains PyCharm工具下载gitee项目,并运行main.py文件即可;

3.除方式2外,还可以直接下载项目zip包之后,使用cmd访问main.py文件执行;

四、鼓励支持

谢谢您的关注与支持,我们为您提供更多有用的开源项目,THANK YOU.

空文件

简介

基于Python实现的自动访问目标网站工具 展开 收起
Python
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Python
1
https://gitee.com/l86/seleniumRobot.git
git@gitee.com:l86/seleniumRobot.git
l86
seleniumRobot
seleniumRobot
master

搜索帮助