网站建设价格标签哪些网站推广不收费

张小明 2025/12/29 15:13:17
网站建设价格标签,哪些网站推广不收费,滁州网站seo,wap手机网站模版#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进行投诉反馈,一经查实,立即删除!

外贸营销网站建设介绍网站开发著作权

👉目录1 失败点 1:背景缺失——缺少项目级指导原则的 SPEC2 失败点 2:评审缺位——对 AI 生成的 SPEC 缺乏严格审查3 查失败点 3: 过度设计——在 SPEC 阶段陷入“分析瘫痪”4 失败点 4:规约与实现解耦——在“意外”产生时绕过 S…

张小明 2025/12/27 6:40:57 网站建设

网站空间域名费响应式网站设计公司

League Akari终极指南:英雄联盟智能助手完整配置与实战应用 【免费下载链接】LeagueAkari ✨兴趣使然的,功能全面的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/LeagueAkari 还在…

张小明 2025/12/27 6:40:25 网站建设

网站站内logo怎么做吉安做网站多少钱

第一章:医疗AI多模态诊断Agent的演进与现状近年来,随着人工智能技术在医学领域的深度渗透,医疗AI多模态诊断Agent正逐步从单一模型向复合型智能体演进。这类系统能够整合医学影像、电子病历、基因组数据和实时生理信号等多种模态信息&#xf…

张小明 2025/12/27 6:39:21 网站建设

成都电商设计招聘网站开发公司与物业公司的承包合同

系统管理:系统维护脚本全解析 在系统管理的日常工作中,脚本的运用至关重要。它能帮助管理员高效地完成诸如进程管理、任务调度验证以及系统定时任务执行等任务。下面将详细介绍几个实用脚本的工作原理、运行方法及可能的改进方向。 1. killall 脚本 killall 脚本用于匹配并…

张小明 2025/12/27 6:38:49 网站建设

建设银行网站地址在百度上怎么做网站

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个基于DDS的智能数据分发系统,使用AI自动生成核心通信模块代码。系统需支持多节点实时数据同步,包含主题管理、QoS配置和性能监控功能。要求使用Kimi-…

张小明 2025/12/27 6:37:46 网站建设

2003建立虚拟网站设计 微网站

从零开始:在 Vivado 2018.3 中构建编码器与译码器的实战指南你有没有遇到过这样的场景?系统里有8个中断源,但CPU只给你留了一个中断引脚。怎么办?总不能让每个设备轮流“喊”吧。这时候,编码器就派上用场了——它能把这…

张小明 2025/12/27 6:37:14 网站建设