selenium unittest管理测试用例
2015-11-15 09:14
686 查看
11.处理下拉菜单的方法
allarea = self.lsp.find_element_by_id("province")
alloptions =allarea.find_elements_by_tag_name("option")
for option in alloptions:
exp_value =option.get_attribute("value")
print exp_value
if exp_value == "110000":
option.click()
第二种方法(只适用于select选框)
通过选项文字
from selenium.webdriver.support.ui import Select
Select(driver.find_element_by_xpath(".//*[@id='province']")).select_by_visible_text(u"北京市")
通过索引
Select(driver.find_element_by_name("city")).select_by_index(0)
通过value值
Select(driver.find_element_by_name("county")).select_by_value("110100")
第三种方法:层级定位先定位父级元素,通过父元素在定位子元素
1. 处理frame弹框
ifr=driver.find_element_by_xpath(“”) #先定位frame弹框
driver.switch_to_frame(ifr) #再跳转到frame弹框
2. 设置默认解码方式
Import sys
Sys.setdefaultencoding(“utf8”)
3. 封测试套以及写报告
myfile="C:\Users\Administrator\Desktop\\tinyshop\\report\\report.html" #C:\Users\Administrator\Desktop\tinyshop\report\report.html
mysuit=open(myfile,"wb")
suite=unittest.TestSuite()
suite.addTest(address_buy("test001"))
runner=HTMLTestRunner.HTMLTestRunner(title=u"花钱",stream=mysuit,description=u"没别的,就是有钱")
runner.run(suite)
mysuit.close()
4. unittest.Test对用例管理的过程
importunittest
classcase(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def testa(self):
pass
def testd(self):
pass
def testc(self):
pass
if__name__=="__main__":
unittest.main()
先执行setup,再执行test开头的用例,最后执行teardown
所有用例必须以test开头
当里面有很多用例,扫描所有以test开头的用例,先执行初始化,所有用例按字母顺序执行,最后teardownt退出
unittest.main()表示执行所有test开头的case
5. 执行测试套
runner=unittest.TextTestRunner()
runner.run(套名)
6. 读取类里面所有的用例,可以实现多类一起测试
suite1 =unittest.TestLoader().loadTestsFromTestCase(类名) #注意:类名没有()
suite =unittest.TestSuite([suite1])
unittest.TextTestRunner().run(suite)
allarea = self.lsp.find_element_by_id("province")
alloptions =allarea.find_elements_by_tag_name("option")
for option in alloptions:
exp_value =option.get_attribute("value")
print exp_value
if exp_value == "110000":
option.click()
第二种方法(只适用于select选框)
通过选项文字
from selenium.webdriver.support.ui import Select
Select(driver.find_element_by_xpath(".//*[@id='province']")).select_by_visible_text(u"北京市")
通过索引
Select(driver.find_element_by_name("city")).select_by_index(0)
通过value值
Select(driver.find_element_by_name("county")).select_by_value("110100")
第三种方法:层级定位先定位父级元素,通过父元素在定位子元素
1. 处理frame弹框
ifr=driver.find_element_by_xpath(“”) #先定位frame弹框
driver.switch_to_frame(ifr) #再跳转到frame弹框
2. 设置默认解码方式
Import sys
Sys.setdefaultencoding(“utf8”)
3. 封测试套以及写报告
myfile="C:\Users\Administrator\Desktop\\tinyshop\\report\\report.html" #C:\Users\Administrator\Desktop\tinyshop\report\report.html
mysuit=open(myfile,"wb")
suite=unittest.TestSuite()
suite.addTest(address_buy("test001"))
runner=HTMLTestRunner.HTMLTestRunner(title=u"花钱",stream=mysuit,description=u"没别的,就是有钱")
runner.run(suite)
mysuit.close()
4. unittest.Test对用例管理的过程
importunittest
classcase(unittest.TestCase):
def setUp(self):
pass
def tearDown(self):
pass
def testa(self):
pass
def testd(self):
pass
def testc(self):
pass
if__name__=="__main__":
unittest.main()
先执行setup,再执行test开头的用例,最后执行teardown
所有用例必须以test开头
当里面有很多用例,扫描所有以test开头的用例,先执行初始化,所有用例按字母顺序执行,最后teardownt退出
unittest.main()表示执行所有test开头的case
5. 执行测试套
runner=unittest.TextTestRunner()
runner.run(套名)
6. 读取类里面所有的用例,可以实现多类一起测试
suite1 =unittest.TestLoader().loadTestsFromTestCase(类名) #注意:类名没有()
suite =unittest.TestSuite([suite1])
unittest.TextTestRunner().run(suite)
相关文章推荐
- Linux socket 初步
- Android Manifest 用法
- Python动态类型的学习---引用的理解
- Python3写爬虫(四)多线程实现数据爬取
- 垃圾邮件过滤器 python简单实现
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 下载并遍历 names.txt 文件,输出长度最长的回文人名。
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- Spark RDD API详解(一) Map和Reduce
- 运维入门
- 运维提升