selenium - unittest一个简单的web端自动化测试脚本(规划测试目录)
做两个简单的页面测试,一个测试百度首页,一个测试有道首页
规划测试目录如下:
ps:在dos下,进入到web_test目录,执行以下命令:python runtest.py >> report/log.txt 2>&1,会在report目录下生成日志文件
代码如下:
test_baidu.py
1 from selenium import webdriver 2 import unittest 3 import time 4 5 6 class TestBaidu(unittest.TestCase): 7 def setUp(self): 8 self.driver = webdriver.Chrome() 9 self.driver.maximize_window() 10 self.driver.implicitly_wait(10) 11 self.base_url = 'http://www.baidu.com' 12 13 def test1(self): 14 driver = self.driver 15 driver.get(self.base_url + '/') 16 driver.find_element_by_id('kw').send_keys('zhangyang123') 17 driver.find_element_by_id('su').click() 18 time.sleep(2) 19 title_baidu = driver.title 20 self.assertEqual(title_baidu, 'zhangyang123_百度搜索') 21 22 def tearDown(self): 23 self.driver.quit() 24 25 26 if __name__ == '__main__': 27 unittest.main()
test_youdao.py
1 from selenium import webdriver 2 import unittest 3 import time 4 5 6 class TestYoudao(unittest.TestCase): 7 def setUp(self): 8 self.driver = webdriver.Chrome() 9 self.driver.maximize_window() 10 self.driver.implicitly_wait(10) 11 self.base_url = 'http://www.youdao.com' 12 13 def test1(self): 14 driver = self.driver 15 self.driver.get(self.base_url + '/') 16 driver.find_element_by_id('translateContent').send_keys('zhangyang') 17 driver.find_element_by_xpath('//*[@id="form"]/button').click() 18 time.sleep(2) 19 title_youdao = driver.title 20 self.assertIn('zhangyang', title_youdao) 21 22 def tearDown(self): 23 self.driver.quit() 24 25 26 if __name__ == '__main__': 27 unittest.main()
runtest.py
1 import unittest 2 3 if __name__ == '__main__': 4 test_dir = './test_case' 5 discover = unittest.defaultTestLoader.discover(test_dir, pattern='test*.py') 6 7 runner = unittest.TextTestRunner() 8 runner.run(discover)