建设网站号码是多少钱上海网站推广行业需求

张小明 2026/1/7 7:51:56
建设网站号码是多少钱,上海网站推广行业需求,企业邮箱入口,西安门户网#x1f345; 点击文末小卡片#xff0c;免费获取软件测试全套资料#xff0c;资料在手#xff0c;涨薪更快数据驱动将测试数据和测试行为完全分离#xff0c;实施数据驱动测试步骤如下#xff1a;A、编写测试脚本#xff0c;脚本需要支持从程序对象、文件或者数据库读入…点击文末小卡片免费获取软件测试全套资料资料在手涨薪更快数据驱动将测试数据和测试行为完全分离实施数据驱动测试步骤如下A、编写测试脚本脚本需要支持从程序对象、文件或者数据库读入测试数据B、将测试脚本使用的测试数据存入程序对象、文件或者数据库等外部介质中C、运行脚本过程中循环调用存储在外部介质中的测试数据D、验证所有的测试结果是否符合预期结果1、使用unittest和ddt进行数据驱动#-*- coding: UTF-8 -*- from selenium import webdriver import unittest import time import logging import traceback import ddt from selenium.common.exceptions import NoSuchElementException # 初始化日志对象 logging.basicConfig( # 日志级别 level logging.INFO, # 日志格式 # 时间、代码所在文件名、代码行号、日志级别名字、日志信息 format%(asctime)s %(filename)s[line: %(lineno)d] %(levelname)s %(message)s, # 打印日志时间 datafomat%a, %d %b %Y %H: %M: %S, # 日志文件存放的目录及日志文件名 filenamed:/DataDriverTesting/report.log, # 打开日志文件的方式 filemodew ) ddt.ddt class TestDemo(unittest.TestCase): def setUp(self): self.driver webdriver.Chrome() ddt.data( [u神奇动物在哪里, u叶], [u疯狂动物成, u古德温], [u大话西游之月光宝盒, u周星驰] ) ddt.unpack def test_data(self,testdata, expectdata): self.driver.get(http://www.baidu.com) self.driver.implicitly_wait(2) try: self.driver.find_element_by_id(kw).send_keys(testdata) self.driver.find_element_by_id(su).click() time.sleep(3) self.assertTrue(expectdata in self.driver.page_source) except NoSuchElementException,e: logging.error(u查找的页面元素不存在异常堆站信息str(traceback.print_exc())) except Exception, e: logging.error(u未知错误错误信息如下str(traceback.print_exc())) else: logging.info(u搜索%s,期望%s,通过%(testdata, expectdata)) def tearDown(self): self.driver.quit() if __name__ __main__: unittest.main()备注在unittest中结合ddt实现数据驱动首先是在头部导入ddt模块其次在测试类前声明使用ddt然后在测试方法前使用ddt.data()添加该测试方法需要的测试数据该函数接收一个可迭代的类型以此来判断需要执行的次数多组测试数据间以逗号隔开如果每组数据存在多个需要将每组数据存于列表中最后使用unpack 进行修饰对测试数据解包传参2、使用JSon存储数据实现数据驱动测试数据存储test_data_list.json中[ 邓肯||蒂姆, 乔丹||迈克尔, 库里||斯蒂芬, 杜兰特||凯文, 詹姆斯||勒布朗 ]数据和脚本文件要在同一级目录中#-*- coding: UTF-8 -*- from selenium import webdriver import HTMLTestRunner import unittest import time import logging import traceback import ddt from selenium.common.exceptions import NoSuchElementException # 初始化日志对象 logging.basicConfig( # 日志级别 level logging.INFO, # 日志格式 # 时间、代码所在文件名、代码行号、日志级别名字、日志信息 format%(asctime)s %(filename)s[line: %(lineno)d] %(levelname)s %(message)s, # 打印日志时间 datafomat%a, %d %b %Y %H: %M: %S, # 日志文件存放的目录及日志文件名 filenamed:/DataDriverTesting/report.log, # 打开日志文件的方式 filemodew ) ddt.ddt class TestDemo(unittest.TestCase): def setUp(self): self.driver webdriver.Chrome() ddt.file_data(test_data_list) def test_data(self, value): self.driver.get(http://www.baidu.com) self.driver.implicitly_wait(2) testdata, expectdata tuple(value.strip().split(||)) self.driver.implicitly_wait(2) try: self.driver.find_element_by_id(kw).send_keys(testdata) self.driver.find_element_by_id(su).click() time.sleep(3) self.assertTrue(expectdata in self.driver.page_source) except NoSuchElementException,e: logging.error(u查找的页面元素不存在异常堆站信息str(traceback.print_exc())) except Exception, e: logging.error(u未知错误错误信息如下str(traceback.print_exc())) else: logging.info(u搜索%s,期望%s,通过%(testdata, expectdata)) def tearDown(self): self.driver.quit() if __name__ __main__: suite1 unittest.TestLoader().loadTestsFromTestCase(TestDemo) suite unittest.TestSuite(suite1) filename d:\\test.html fp file(filename,wb) runner HTMLTestRunner.HTMLTestRunner(streamfp, titleReport_title, descriptionReport_description) runner.run(suite)3、使用Excel进行数据驱动测试安装Python解析Excel 2007及以上版本的模块pip install openpyxl2.3.3在Pycharm上新建一个工程创建文件测试数据.xlsx文件sheet名为搜索数据表序号搜索词期望结果1邓肯蒂姆2乔丹迈克尔3库里斯蒂芬创建ExcelUtil.py文件# -*- coding: UTF-8 -*- from openpyxl import load_workbook class ParseExcel(object): def __init__(self, excelPath, sheetName): # 将要读取的Excel加载到内存 self.wb load_workbook(excelPath) # 通过工作表名获取一个工作表对象 self.sheet self.wb.get_sheet_by_name(sheetName) # 获取工作表中存在数据的区域的最大行号 self.maxRowNum self.sheet.max_row def getDatasFromSheet(self): # 用于存放从工作表中读取出来的数据 dataList [] # 因为工作表中的第一行是标题行所以需要去掉 for line in self.sheet.rows[1:]: # 遍历工作表中数据区域的每一行并将每行中每个单元格的数据去除存于列表tmpList中 # 然后再将存放一行数据的列表添加到最终数据列表dataList中 tmpList [] tmpList.append(line[1].value) tmpList.append(line[2].value) dataList.append(tmpList) return dataList if __name__ __main__: excelPath u测试数据.xlsx sheetName u搜索数据表 pe ParseExcel(excelPath, sheetName) for i in pe.getDatasFromSheet(): print i[0],i[1]创建DataDriven.py文件# -*- coding: UTF-8 -*- from selenium import webdriver import unittest import time import logging import traceback import ddt from ExcelUtil import ParseExcel from selenium.common.exceptions import NoSuchElementException # 初始化日志对象 logging.basicConfig( # 日志级别 level logging.INFO, # 日志格式 # 时间、代码所在文件名、代码行号、日志级别名字、日志信息 format%(asctime)s %(filename)s[line: %(lineno)d] %(levelname)s %(message)s, # 打印日志时间 datafomat%a, %d %b %Y %H: %M: %S, # 日志文件存放的目录及日志文件名 filenamed:/DataDriverTesting/report.log, # 打开日志文件的方式 filemodew ) excelPath u测试数据.xlsx sheetName u搜索数据表 excel ParseExcel(excelPath, sheetName) ddt.ddt class TestDemo(unittest.TestCase): def setUp(self): self.driver webdriver.Chrome() ddt.data(*excel.getDatasFromSheet()) def test_data(self, data): testdata,expectdata tuple(data) self.driver.get(http://www.baidu.com) print testdata,expectdata self.driver.implicitly_wait(2) try: self.driver.find_element_by_id(kw).send_keys(testdata) self.driver.find_element_by_id(su).click() time.sleep(3) self.assertTrue(expectdata in self.driver.page_source) except NoSuchElementException,e: logging.error(u查找的页面元素不存在异常堆站信息str(traceback.print_exc())) except Exception, e: logging.error(u未知错误错误信息如下str(traceback.print_exc())) else: logging.info(u搜索%s,期望%s,通过%(testdata, expectdata)) def tearDown(self): self.driver.quit() if __name__ __main__: unittest.main()备注ddt.data从excel.getDatasFormSheet()方法中接收一个可迭代的数组对象以此来判断需要执行的次数。如果ddt.data()中传的是一个方法方法前需要加型号(*)修饰4、使用xml进行数据驱动测试在pycharm中创建一个项目创建TestData.xml文件用于存放测试数据具体内容如下?xml version1.0 encodingutf-8 ? bookList typetechnology book nameSelenium WebDriver实战宝典/name author吴晓华/author /book book nameHTTP权威指南/name authorHTTP/author /book book name探索式软件测试/name author惠特克/author /book /bookList创建XmlUtil.py文件用于解析XML文件获取测试数据# -*- coding: UTF-8 -*- from xml.etree import ElementTree class ParseXML(object): def __init__(self,xmlPath): self.xmlPath xmlPath def getRoot(self): tree ElementTree.parse(self.xmlPath) return tree.getroot() def findNodeName(self,parentNode,nodeName): nodes parentNode.findall(nodeName) return nodes def getNodeOfChildText(self, node): # childrenTextDict {i.tag: i.text for i in list(node.iter())[1:]} childrenTextDict {} for i in list(node.iter())[1:]: childrenTextDict[i.tag] i.text return childrenTextDict def getDataFromXml(self): root self.getRoot() books self.findNodeName(root, book) dataList [] for book in books: childrenText self.getNodeOfChildText(book) dataList.append(childrenText) return dataList if __name____main__: xml ParseXML(rTestData) datas xml.getDataFromXml() for i in datas: print i[name],i[author]创建DataDrivenByXML.py文件用于编写数据驱动测试脚本# -*- coding: UTF-8 -*- from selenium import webdriver import unittest import time import os import logging import traceback import ddt from XmlUtil import ParseXML from selenium.common.exceptions import NoSuchElementException # 初始化日志对象 logging.basicConfig( # 日志级别 level logging.INFO, # 日志格式 # 时间、代码所在文件名、代码行号、日志级别名字、日志信息 format%(asctime)s %(filename)s[line: %(lineno)d] %(levelname)s %(message)s, # 打印日志时间 datafomat%a, %d %b %Y %H: %M: %S, # 日志文件存放的目录及日志文件名 filenamed:/DataDriverTesting/report.log, # 打开日志文件的方式 filemodew ) # 获取当前文件所在父目录的绝对路径 currentPath os.path.dirname(os.path.abspath(__file__)) # 获取数据文件的绝对路径 dataFilePath os.path.join(currentPath, TestData.xml) print dataFilePath # 创建ParseXML实例对象 xml ParseXML(TestData) ddt.ddt class TestDemo(unittest.TestCase): def setUp(self): self.driver webdriver.Chrome() ddt.data(* xml.getDataFromXml()) def test_data(self, data): testdata, expectdata data[name], data[author] self.driver.get(http://www.baidu.com) print testdata,expectdata self.driver.implicitly_wait(2) try: self.driver.find_element_by_id(kw).send_keys(testdata) self.driver.find_element_by_id(su).click() time.sleep(3) self.assertTrue(expectdata in self.driver.page_source) except NoSuchElementException,e: logging.error(u查找的页面元素不存在异常堆站信息str(traceback.print_exc())) except Exception, e: logging.error(u未知错误错误信息如下str(traceback.print_exc())) else: logging.info(u搜索%s,期望%s,通过%(testdata, expectdata)) def tearDown(self): self.driver.quit() if __name__ __main__: unittest.main()最后感谢每一个认真阅读我文章的人礼尚往来总是要有的虽然不是什么很值钱的东西如果你用得到的话可以直接拿走这些资料对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你凡事要趁早特别是技术行业一定要提升技术功底。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

深圳建模板网站实体店营销策划方案

第一章:多模态Agent性能骤降?可能是Docker网络隔离没做好(附诊断清单)在部署多模态Agent时,开发者常遭遇推理延迟陡增、服务响应超时等问题。这些性能异常往往并非源于模型本身,而是由Docker容器的网络隔离…

张小明 2025/12/31 10:52:04 网站建设

郑州做网站价格手机上怎么做能打开的网站吗

要使用 pytesseract 识别图片文字,你需要先安装 Tesseract OCR引擎 和 Pillow库,然后通过几行 Python 代码导入库、加载图片,并调用 image_to_string() 函数进行识别,传入图片路径和指定语言 (如 ‘eng’ 或 ‘chi_sim’) 即可获得文本内容。 步骤 1: 安装 Tesseract OCR引…

张小明 2026/1/1 1:58:25 网站建设

网页设计网站怎么放到域名里百度百科创建

把3D打印与AI设计平台化,或许值得一试。近日,人工智能驱动的3D设计平台PrintPal宣布,自2025年4月上线以来,仅用八个月时间,平台注册用户已突破10万。 用户可通过文本或图像生成可打印的三维模型,操作流程极…

张小明 2025/12/31 16:17:21 网站建设

网站建设公司哪里好网络游戏推广

3天精通YOLOv8n-face:从零开始的人脸检测实战指南 【免费下载链接】yolov8-face 项目地址: https://gitcode.com/gh_mirrors/yo/yolov8-face 想要快速掌握专业级人脸检测技术?本文带你用3天时间从环境搭建到实战部署,全面掌握YOLOv8n…

张小明 2025/12/31 23:29:38 网站建设

养殖场在哪个网站做环评备案网络营销渠道

Linux端口是操作系统为网络进程分配的“通信接口”,相当于网络数据传输的“专属通道”。同一台服务器的一个IP可对应多个端口,不同端口绑定不同网络服务,那么如何查看Linux端口使用情况?以下是具体内容介绍。查看端口最常用的命令是netstat和…

张小明 2025/12/31 15:29:29 网站建设