当前位置: 首页 > article >正文

【功能自动化】使用测试套件运行测试函数

1.创建registers.py

将registers.py放在文件夹下

registers.py

代码实现

# 导入包
from selenium import webdriver
from selenium.webdriver.support.select import Select
from time import sleep
import unittest
import parameterized

driver = None
file = open(r"user.txt")
data = []
for row in file:
    t = row.split()
    data.append(t)

class Reg(unittest.TestCase):
    
    @classmethod
    def setUpClass(cls):
        global driver
        driver = webdriver.Chrome()
    
    @classmethod
    def tearDownClass(cls):
        driver.quit()
    
    # def setUp(self):
    #     driver.get("http://127.0.0.1:1080/WebTours/")
    #     sleep(3)
    def testOpenWeb(self):
        u'''打开网站'''
        driver.get("http://127.0.0.1:1080/WebTours/")
        # 等待3秒
        sleep(3)

        driver.switch_to.default_content()
        driver.switch_to_frame("body")
        driver.switch_to_frame("info")
        actual = driver.find_element_by_tag_name("body").text
        expect = 'Welcome to the Web Tours site.'
        assert expect in actual,"实际结果:"+actual
    
    @parameterized.parameterized.expand(data)
    def testRegister(self,yhm,mm):
        u'''注册账号'''
        driver.get("http://127.0.0.1:1080/WebTours/")
        sleep(1)
        driver.switch_to.default_content()
        driver.switch_to.frame("body")
        driver.switch_to.frame("info")

        driver.find_element_by_link_text("sign up now").click()

        sleep(3)
        # 跳转页面,还是需要切换框架
        driver.switch_to.default_content()
        driver.switch_to.frame("body")
        driver.switch_to.frame("info")

        driver.find_element_by_name("username").send_keys(yhm)
        driver.find_element_by_name("password").send_keys(mm)
        driver.find_element_by_name("passwordConfirm").send_keys(mm)
        driver.find_element_by_name("register").click()
        sleep(3)
        
        driver.switch_to.default_content()
        driver.switch_to.frame("body")
        driver.switch_to.frame("info")
        
        expect = "Thank you, "+yhm
        actual = driver.find_element_by_tag_name("body").text
        
        assert expect in actual,"实际结果:"+actual


if __name__=="__main__":
    # verbosity=2 显示详细信息,可以省略,测试信息不详细
    unittest.main(verbosity=2)

2.使用测试套件运行测试函数

代码实现

import unittest
from test.registers import Reg
suite = unittest.TestSuite()
suite.addTest(Reg("testOpenWeb"))
runner = unittest.TextTestRunner(verbosity=2)
runner.run(suite)

3.运行结果


http://www.kler.cn/a/282430.html

相关文章:

  • IDEA2024:右下角显示内存
  • 8.C++面向对象5(实现一个较为完善的日期类)
  • 通过JS删除当前域名中的全部COOKIE教程
  • L11.【LeetCode笔记】有效的括号
  • Chrome和Chromium的区别?浏览器引擎都用的哪些?浏览器引擎的作用?
  • 【SpringBoot】公共字段自动填充
  • 如何上传NPM包:一步步指南
  • Java、python、php版 剧本杀拼团服务平台 剧本杀管理系统(源码、调试、LW、开题、PPT)
  • RAG Paper List - 检索增强生成论文汇总(2)
  • 一文了解内网穿透以及内网穿透工具 Sunny-Ngrok 的使用指南
  • Java的内存管理机制之(垃圾回收(GC)原理)
  • 【我的Android进阶之旅】 Android官方推荐的依赖注入框架:Dagger Hilt
  • foundation model
  • 文本分析之关键词提取(TF-IDF算法)
  • 行为型设计模式-模板方法(template method)模式
  • 数据结构(邓俊辉)学习笔记】串 17——Karp-Rabin算法:散列
  • 数据结构:栈、队列详解篇
  • Java 集合之List
  • C++ STL adjacent_find 用法与实现
  • VMware16安装包+详细安装教程
  • 虚拟机Ubuntu误操作导致无法自动联网的解决办法
  • (第三十七天)
  • Unity(2022.3.41LTS) - 着色器
  • 【自由能系列(初级)】大脑功能与贝叶斯计算——深层生成模型的自由能原理
  • junit格式报告解析工具
  • shell脚本-采集容器内自定义端口tcp连接数并通过http接口推送到Prometheus