脚本宝典收集整理的这篇文章主要介绍了单元测试,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
富文本编辑可以用函数
def richText(driver, content): ''' 实现在富文本里面输入内容 :param driver: webdriver实例化后的对象信息 :param content: 富文本里面需要输入的文字内容 :return: ''' js = "document.getElementById('ueditor_0').contentWindow.document.body.innerHTML='{0}'".format(content) driver.execute_script(js)
#给富文本编辑器里面到写内容
driver=webdriver.Chrome()
driver.get('https://uutool.cn/ueditor/')
driver.implicitly_wait(30)
t.sleep(2)
进入富文本编辑器的框架
drvier.switch_to.frame('ueditor_0')
#给富文本编辑器里面到写内容
drvier.find_element_by_xpath('/html/body/p').send_keys('niubi')
t.sleep(2)
#函数方法
# richText(driver=driver,content='这一步是使用封装的函数来输入文本')
t.sleep(3)
网页地址:file:///C:/Users/ADMINI~1/AppData/Local/Temp/Rar$EXa12876.2782/Time/index.html
时间控件的代码是
driver=webdriver.Chrome() #获取时间控件的地址,下载的解压 driver.get('file:///C:/Users/ADMINI~1/AppData/Local/Temp/Rar$EXa12876.2782/Time/index.html') driver.maximize_window() driver.implicitly_wait(10) #开始时间 startTime(driver=driver,content='2021-12-05 00:00:00') t.sleep(2) #结束时间 endTime(driver=driver,content='2021-12-05 10:00:00') t.sleep(5) driver.quit()
#给富文本编辑器里面到写内容driver=webdriver.Chrome()driver.get('https://uutool.cn/ueditor/')driver.implicitly_wait(30)t.sleep(2)进入富文本编辑器的框架drvier.switch_to.frame('ueditor_0')#给富文本编辑器里面到写内容drvier.find_element_by_xpath('/html/body/p').send_keys('niubi')t.sleep(2)#函数方法# richText(driver=driver,content='这一步是使用封装的函数来输入文本')t.sleep(3)
#测试点,正常和异常#两个相同类型,整型,不同类型写测试点#要想单元自动化,就要单元测试框架来实现,导入unittest标准库
'''testCase:编写的每个具体的测试场景测试固件(勾子方法):初始化和清理testSuite:测试套件是testCase的集合testRunner:具体执行被编写的测试套件或者是测试用例testReport:测试报告反馈实际的测试结果''''''
一、自动化测试用例要素:1,前提条件setUp() 开始2,测试步骤, 测试用例3,结果验证 4,清理 tearDown() 结束
1、在一个测试类里面,每一个测试方法都是以test开头的,test不能是中间或者尾部,必须是开头,建议test_
2、每一个测试用例方法都应该有注释信息,这样在测试报告就会显示具体的测试点的检查点
3、在自动化测试中,每个测试用例都必须得有断言,无断言的自动化测试用例是无效的
4、最好一个测试用例方法对应一个业务测试点,不要多个业务检查点写一个测试用例
5、如果涉及到业务逻辑的处理,最好把业务逻辑的处理方法放在断言前面,这样做的目的是不要因为业务逻辑执 行错误导致断言也是失败
6、测试用例名称最好规范,有约束
7、是否先写自动化测试的测试代码,在使用自动化测试方式写,本人觉得没必要,毕竟能够做自动化测试的都具
备了功能测试的基本水平,所以没必要把一个业务的检查点写多次,浪费时间和人力成本。
断言
使用的是类方法@classmethon,这样测试固件只会执行一次的
测试用例执行顺序,数字与字母的顺序
为:0-9,A-Z,a-z,所以以A开头的测试用例方法会优先执行,以a开头会后执行。也就是根据数字、从小到 大执
行的,切记数字的大小值的是不包含test,值的是test后面的测试点的数字大小
测试用例执行3方法1、直接执行
if __name__ == '__main__': unittest.main()
2按照测试类执行,分类执行
调 用unittest 模块中的测试加载类 TestLoader() 里的 loadTestsFromTestCase(通过测试点加载)方法 (BaiduTest)
suite=unittest.TestLoader().loadTestsFromTestCase(BaiduTest) #调用测试点,也就是类名字来执行 unittest.TextTestRunner().run(suite)
# 按照模块执行 suite = unittest.TestLoader().loadTestsFromModule('test-baidu-class.py')unittest.TextTestRunner().run(suite)
方法关键字;discover里面有两个参数,一个是开始路径,一个是正则表达式
import unittest
import os
def getTests():
'''加载所有测试的模块'''
suite=unittest.TestLoader().discover(start_dir=os.path.dirname(__file__),pattern='test_*.py')
return suite
def runSuite():
unittest.TextTestRunner().run(getTests())
runSuite()
以上是脚本宝典为你收集整理的单元测试全部内容,希望文章能够帮你解决单元测试所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。