zoukankan      html  css  js  c++  java
  • selenium初级实战

    软件的安装

    测试固件:比如打开、关闭浏览器setup()、teardown();

    断言:期望结果;

    Unitest测试用例必须test开头

    测试类中有多个测试用例时,想要执行其中某一个用例,鼠标放到对应用例上,右键点击执行,就只执行这个测试用例。

    如下:每执行一个用例需要打开、关闭一次浏览器

    import unittest
    from selenium import webdriver
    
    
    class SinaMailTest(unittest.TestCase):
    	'''Up大写啊,切记'''
    	def setUp(self):
    		self.driver = webdriver.Firefox()
    		self.driver.maximize_window()
    		# self.driver.implicitly_wait(30)
    		self.driver.get('https://mail.sina.com.cn/')
    
    	def tearDown(self):
    		self.driver.close()
    
    
    	def test_sina_islogin(self):
    		'''bool类型验证,验证新浪邮箱是否默认登录,is_selected代表已勾选,若未勾选,再返回值为false'''
    		islogin=self.driver.find_element_by_id('store1').is_selected()
    		self.assertTrue(islogin)
    
    	def test_sina_issecret(self):
    		'''BOOL类型验证,验证是否加密已勾选'''
    		issecret=self.driver.find_element_by_id('ssl1').is_selected()
    		self.assertTrue(issecret)
    
    
    if  __name__  ==  '__main__':
    	unittest.main(verbosity=2)
    

     用类方法@clssmethod,使用例执行只需打开、关闭一次浏览器、

    import unittest
    from selenium import webdriver
    import time as t
    
    class BaiduTest(unittest.TestCase):
    	@classmethod
    	def setUpClass(cls):
    		cls.driver = webdriver.Firefox()
    		cls.driver.maximize_window()
    		cls.driver.implicitly_wait(30)
    		cls.driver.get('http://www.baidu.com')
    
    	@classmethod
    	def tearDownClass(cls):
    		cls.driver.close()
    
    
    	def test_baidu_so(self):
    		'"搜索业务,测试百度的搜索"'
    		self.driver.find_element_by_id('kw').send_keys('selenium')
    		'''测试固件只打开关闭一次,每次执行后回到首页'''
    		self.driver.get('http://www.baidu.com')
    
    	def test_baidu_news(self):
    		'''进入百度新闻'''
    		self.driver.find_element_by_link_text('新闻').click()
    		t.sleep(3)
    		'''测试固件只打开关闭一次,每次执行后回到首页'''
    		self.driver.get('http://www.baidu.com')
    
    
    
    if __name__ == '__main__':
    	# '''对testsuite进行实例化'''
    	# suite=unittest.TestSuite()
    	# suite.addTest(BaiduTest('test_baidu_so'))
    	# suite.addTest(BaiduTest('test_baidu_news'))
    	# unittest.TextTestRunner(verbosity=2).run(suite)
    	'''按照测试类进行执行'''
    	suite=unittest.makeSuite(BaiduTest)
    	unittest.TextTestRunner(verbosity=2).run(suite)
    

     注意:使用类方法时,每执行完一个用例,需要初始化回到首页,不然执行会报错

  • 相关阅读:
    Andorid中写文件后在电脑上看不到的解决办法
    【Android布局】在程序中设置android:gravity 和 android:layout_Gravity属性
    OpenCV入门学习笔记
    视频播放(iOS开发)
    音频播放(iOS开发)
    iPad开发(相对于iPhone开发时专有的API)
    静态库/内存分析/通讯录/换肤/硬件信息获取
    Alpha冲刺! Day1
    软工团队
    软工团队
  • 原文地址:https://www.cnblogs.com/manma/p/11051752.html
Copyright © 2011-2022 走看看