Python+Selenium+Unittest实现PO模式web自动化框架(8)
1.main.py模块的功能
最后就是要有一个项目入口,并且是需要加载测试用例集。
# --^_^-- coding:utf-8 --^_^--
# @Remark:运行入口 """
记录一下用例执行过程 - 日志
如果用例失败 - Trackback报错信息 - 失败了截图。
记录一下, 用例的运行时间 - 起始 - 等待的时候,等待时长。
用例、页面对象当中。 用例 = 页面对象 + 测试数据
断言失败了!! 页面对象方法执行的时候,报错了!!
页面对象-任意功能 = 等待元素可见,等待元素存在、点击、输入、文本获取、属性获取
alert切换、iframe切换、下拉列表、上传。。。
提供测试报告
"""
import unittest
from Common.HTMLTestRunnerNew import HTMLTestRunner
from Common.dir_config import * # 一、TestLoader装载测试用例
# testloader的用法
# 1、实例化TestLoader对象
# 2、使用discover去找到一个目录下的所有测试用例
# 3、使用s # TestLoader实例化
s = unittest.TestSuite() # 套件实例化
t = unittest.TestLoader() # 收集器实例化 # 将收集到的用例,放到测试套件当中。
s.addTests(t.discover(testcases_dir)) # 二、将测试报告记录到HTML文件
# 打开一个HTML文件
fs = open(htmlreport_dir + '/web平台测试报告.html','wb') # 三、实例化HTML结果到用例运行器
runner = HTMLTestRunner(fs,title="web测试报告",description="登录页面功能测试!!",tester="伟") # 四、运行测试套件
runner.run(s)
Python+Selenium+Unittest实现PO模式web自动化框架(8)的更多相关文章
- Python+Selenium+Unittest实现PO模式web自动化框架(1)
1.什么是PO模式? PO是Page Object的缩写 PO模式是自动化测试项目开发实践的最佳设计模式之一,讲页面定位和业务操作分开,也就是把对象的定位和测试脚本分开,从而提供可维护性. 主要有以下 ...
- Python+Selenium+Unittest实现PO模式web自动化框架(6)
1.TestCases目录下的模块 TestCases目录下是存放测试用例的目录. TestCases目录下的测试用例采用unittest框架来构建. 例如:登录功能的测试用例.(test_1_log ...
- Python+Selenium+Unittest实现PO模式web自动化框架(2)
1.Common目录下的具体模块讲解. 2.basepage.py basepage.py模块里面是封装的对元素的操作.例如:查找元素.点击元素.文本输入等等. # --^_^-- coding:ut ...
- Python+Selenium+Unittest实现PO模式web自动化框架(4)
1.PageLocators目录下的具体模块 2.PageLocators目录下主要放置个页面的元素定位.用于统一管理个页面的定位元素. 例如:登录页面的元素定位login_page_locator. ...
- Python+Selenium+Unittest实现PO模式web自动化框架(7)
1.TestDatas目录的功能 TestDatas目录下存放的是测试数据,比如:登录功能的测试用例数据. # --^_^-- coding:utf-8 --^_^-- # @Remark:登录测试数 ...
- Python+Selenium+Unittest实现PO模式web自动化框架(5)
1.PageObjects目录下的模块 该目录下是存放各页面功能点. 比如:login_page.py模块下就是存放登录页面上的各个功能点的.(登录功能.获取登录失败的提示信息) # --^_^-- ...
- Python+Selenium+Unittest实现PO模式web自动化框架(3)
1.Outputs目录下的具体目录功能 2.logs目录 logs目录是用于存放log日志的一个目录. 2.reports目录 reports目录是用于存放测试报告的. 3.screenshots目录 ...
- python + selenium + unittest实现简单的UI自动化
使用的版本是python 3,其中HTMLTestRunner是修改版本,参考以下博客并下载 https://blog.csdn.net/zhanin123/article/details/78950 ...
- 【转】基于Selenium的web自动化框架(python)
1 什么是selenium Selenium 是一个基于浏览器的自动化工具,它提供了一种跨平台.跨浏览器的端到端的web自动化解决方案.Selenium主要包括三部分:Selenium IDE.Sel ...
随机推荐
- 华为---MGRE实验--内网为RIP
数据链路层封装技术总结: 实验要求与拓扑: 1. 配置IP地址 公网IP地址:12.1.1.0/24.23.1.1.0/24.24.1.1.0/24 tunnel地址:1.1.1.1/24.1.1.1 ...
- Visual Studio 2013中安装Resharper之后一些快捷键无法使用,比如F6和F12
快捷键是一个很好用的东西,尤其对于计算机从业者来说,好的快捷键能够高程度提高工作效率.像我们程序员经常需要团队开发,我们会遇到一个问题,那就是快捷键不一致问题,我一般会安装resharper,但是有的 ...
- java 常用时间操作类,计算到期提醒,N年后,N月后的日期
package com.zjjerp.tool; import java.text.ParseException; import java.text.ParsePosition; import jav ...
- 在jsp页面嵌入java代码让某些div显示或者隐藏
<!--监测评价人显示评价人信息 --> <% if("D3".equals(role_flag)){%> <div id="crud&qu ...
- 在jsp页面动态添加,删除文本框模块
jsp代码============ <table class="crud-content-info" > <tr > <td align=" ...
- DVWA Brute Force:暴力破解篇
DVWA Brute Force:暴力破解篇 前言 暴力破解是破解用户名密码的常用手段,主要是利用信息搜集得到有用信息来构造有针对性的弱口令字典,对网站进行爆破,以获取到用户的账号信息,有可能利用其权 ...
- java io 源码研究记录(一)
Java IO 源码研究: 一.输入流 1 基类 InputStream 简介: 这是Java中所有输入流的基类,它是一个抽象类,下面我们简单来了解一下它的基本方法和抽象方法. 基本方法: publ ...
- 【mysql】- Expalin篇
简介 id:在一个大的查询语句中每个 SELECT 关键字都对应一个唯一的id 与查询优化器有关,假如被优化过,那么可能是上下两个的id都是一样的 select_type:SELECT 关键字对应的那 ...
- Turtlebot3新手教程-应用-跟随
本文针对如何利用Turtlebot3可实现的各种应用进行讲解 具体步骤如下: [Remote PC]安装应用包 cd ~/catkin_ws/src git clone https://github. ...
- [ABP教程]第三章 创建、更新和删除图书
Web应用程序开发教程 - 第三章: 创建,更新和删除图书 关于本教程 在本系列教程中, 你将构建一个名为 Acme.BookStore 的用于管理书籍及其作者列表的基于ABP的应用程序. 它是使用以 ...