自动化测试-Unittest框架
unittest单元测试框架不仅可以适用于单元测试,还可以适用WEB自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果。今天笔者就总结下如何使用unittest单元测试框架来进行WEB自动化测试。
喵霓
向前走,莫回头
展开
-
selenium+python+unittest自动化测试总结
1、个人意识 个人觉得就像大家跟风一样,最后部署到服务器jenkins就可以了,却未考虑到现实存在的问题 对用例的自动化测试真实了解吗? 出于什么目地了解吗? 对持续集成jenkins,svn、docker了解吗? 项目上的使用,思路有明确吗? 研究最终目地方向,过程中执行,是否与预期相出入? 都不了解,不是特别了解,半知半解; 2、实际项目思路 ...原创 2021-08-03 10:15:59 · 93 阅读 · 0 评论 -
jenkins执行python脚本中总是失败,error=2, No such file or directory
jenkins配置 保存后,直接执行构建 控制台信息提示如下 No changes for svn://XXXXXXXX/DataCr/test/Pro since the previous build [Pro] $ cmd /c call /tmp/jenkins2788359179758767349.bat FATAL: command execution failed java.io.IOException: error=2, No such file or direc...原创 2021-07-28 10:44:52 · 2037 阅读 · 2 评论 -
ReadMe.md
测试框架目录结构解析: 1. config:配置文件,将项目相关的配置全放到这个文件夹中,Python支持比较好的配置文件格式有yaml、ini 等。实现配置项与代码分离; 2. data:数据文件,将测试用例参数化相关的文件放到这里,一般采用xlsx、CSV等格式。实现数据与代码分离; 3. drivers:驱动文件,放置浏览器驱动,比如Chromedriver、geckodriver等; 4. log:日志文件,将自动化执行产生的日志存放在这里,可以将日志分类,如运行时日志test log,错误日志e.原创 2021-07-14 18:49:41 · 153 阅读 · 0 评论 -
jenkins
目录 1、General 2、重试次数 3、构建触发器 选择构建一个自由风格的软件项目,点击OK 1、General 进入项目内进行配置 commit agent's Docker container Define a Docker templater Discard old builds GitHub 项目 This build requires lockable resources This project is parameterized Throttle build原创 2021-07-14 18:42:55 · 228 阅读 · 0 评论 -
自动化测试-04-脚本优化:log.py
说明:把异常处理事件写入txt文件,并进行截图留证; #!python3.6 # coding=utf-8 from selenium import webdriver import time import os import logging import traceback class Log(): def log_Except(self, driver, msg=None): #采用相对路径的方式,找到该文件存放的上一级目录,E:/PycharmPro/datacenter原创 2021-07-13 18:47:19 · 138 阅读 · 0 评论 -
自动化测试-04-脚本优化:run.py
说明:引用把suite和report的方法,通过main(),执行脚本 #!python3.6 # coding=utf-8 from datacenter.test.suite.suite_Login import LoginSuite from datacenter.test.report.report_Login import Reports def Login(): suite=LoginSuite() return suite.Login() def Login_cl.原创 2021-07-07 18:25:15 · 315 阅读 · 0 评论 -
自动化测试-04-脚本优化:send_mail.py
说明:执行用例时会产生测试报告,再把测试报告配置邮箱,此处为配置邮箱的方法 定义发送邮件、查找最新测试报告文件的方法 #!python3.6 # coding=utf-8 import smtplib from email.mime.text import MIMEText from email.header import Header import os class SendMail(): #定义发送邮件 def send_mail(self,file_new):原创 2021-07-07 18:15:12 · 297 阅读 · 0 评论 -
自动化测试-04-脚本优化:report_Login.py
说明:生成测试报告的封装方法,配置邮箱,通过邮箱收到测试报告情况; #!python3.6 # coding=utf-8 import time from HTMLTestRunner import HTMLTestRunner from datacenter.test.email.send_mail import SendMail '''存放生成测试报告的方法''' class Reports(): def loginReport(self,funame,title=None):原创 2021-07-07 18:08:47 · 151 阅读 · 0 评论 -
自动化测试-04-脚本优化:suite_Login.py
说明:将测试用例全部加到suite测试套件,可以至少2种方法按照自己喜欢的方式来,在这里使用了discover()方法 #!python3.6 # coding=utf-8 from selenium import webdriver import time import unittest from datacenter.test.case.test_Login import LoginTest class LoginSuite(): # 一条一条加载case用例 def Login(原创 2021-07-07 18:03:42 · 133 阅读 · 0 评论 -
自动化测试-04-脚本优化:test_Login.py
功能脚本操作(用例脚本) 说明:将页面元素和元素操作结合起来,组成一个完整的动作,功能用例; 直接引用LoginPage类,引用页面元素操作方法; '''组织单元测试用例: 记录登录成功和失败的用例 登录测试举例用例:Login.py ''' from selenium import webdriver import time import unittest from datacenter.test.page.Login_page import LoginPage '''封装一个自己的测试类Tes原创 2021-07-07 17:59:30 · 636 阅读 · 0 评论 -
自动化测试-04-脚本优化:test、report
test测试文件包: 1.页面元素与脚本分离(页面中的元素):redmine_locators.py 2.元素操作与脚本分离(页面类操作):login_page.py 3、功能脚本操作(用例脚本):test_Login.py 4、执行用例脚本:run.py 5、将测试用例全部加到suite测试套件:suite_Login.py 6、将HTML测试报告做为公共类中使用:com_result.py ...原创 2021-07-01 17:16:42 · 135 阅读 · 0 评论 -
自动化测试-03-test-run.py
说明:使用测试套件TestSuite(),加载case用例 注意:测试用例类添加到测试套件有4-5种方法,其保存文件也不一定是run.py,应该先是存放在 中,再引用到run.py文件中(后继改进) #!python3.6 # coding=utf-8 __authon__ = 'wh' __data__ = "2021-06-24 15:33" data = "2021/6/24 15:33" from selenium import webdriver import time import un原创 2021-06-28 15:19:53 · 207 阅读 · 3 评论 -
自动化测试-03-test-Login.py
功能脚本操作(用例脚本) 说明: #!python3.6 # coding=utf-8 __authon__ = 'wh' __data__ = "2021-06-24 17:12" from datacenter.test.page.Login_page import LoginPage data = "2021/6/24 17:12" from selenium import webdriver from time import sleep import unittest from datac原创 2021-06-28 15:14:21 · 286 阅读 · 0 评论 -
自动化测试-03-test-login_page.py
元素操作与脚本分离(页面类操作) 说明:先从redmine_locators.py中取得元素,再封装定位页面元素的方法,便于Login.py使用。 #!python3.6 # coding=utf-8 '''以下三个信息是记录编写的日期时间和姓名''' __authon__ = 'XXX' __data__ = "2021-06-24 17:24" data = "2021/6/24 17:24" from selenium import webdriver from time import sle原创 2021-06-28 13:49:23 · 253 阅读 · 0 评论 -
自动化测试-03-test-redmine_locators.py
页面元素与脚本分离(页面中的元素):redmine_locators.py 说明:将页面中定位的元素,全部存放到redmine_locators.py,最后由login_page.py调用,实现页面元素操作 #!python3.6 # coding=utf-8 __authon__ = 'wh' __data__ = "2021-06-24 16:31" data = "2021/6/24 16:31" ''' 将所有元素,按页面保存在不同的class下面 ''' from selenium.webd原创 2021-06-28 11:28:31 · 117 阅读 · 0 评论 -
自动化测试-03-test测试文件
1.页面元素与脚本分离:redmine_locators.py 2.元素操作与脚本分离:login_page.py 3、功能脚本操作:Login.py 4、执行用例脚本:run.py原创 2021-06-28 11:19:19 · 79 阅读 · 0 评论 -
自动化测试-02-目录结构
datacenter |--config(配置文件) |--data(数据文件) |--drivers(驱动) |--log(日志) |--report(测试报告) |--test(程序代码) |--case(测试用例) |--common(抽象通用代码) |--page(页面类代码) |--suit(测试套) |--element(元素类代码) |--utils(公共方.原创 2021-06-28 11:13:47 · 350 阅读 · 0 评论 -
自动化测试-01-PageObject原理
Page Object(简称PO)模式,是Selenium实战中最为流行,并且是自动化测试中最为熟悉和推崇的一种设计模式。在设计自动化测试时,把页面元素和元素的操作方法按照页面抽象出来,分离成一定的对象,然后再进行组织。原创 2021-06-28 10:56:29 · 324 阅读 · 0 评论 -
Unittest-单元测试框架介绍
为什么要用unittest框架: 我们都知道,python语言编写的webdriver测试脚本,通常都使用单元测试框架来运行, 而unittest框架 是python标准内置模块,因此我们就用unit test框架为基础来实现完成自动化 unittest框架4个重要概念: (1)Test Fixture(测试固件):一个test fixture所做的事情是执行单个或多个测试用例之前做的准备工作和执行结束后的一些相关清理工作,这包括:创建 数据库连接,测试环境的清理等。 (2)Test Case..转载 2021-06-28 10:30:33 · 305 阅读 · 0 评论