在shell中运行如下脚本:
# -*- coding:utf-8 -*-
__author__ = 'wenbin'
import unittest
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
class BaiduSearch(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome()
self.driver.maximize_window()
self.url = 'https://www.baidu.com'
def baidu_search(self):
driver = self.driver
driver.get(self.url)
self.driver.implicitly_wait(5)
try:
assert u"百度一下,你就知道" in driver.title
print 'Title检查正确'
except Exception as e:
print ('Title检查失败:', format(e))
elm = driver.find_element_by_xpath('//*[@id="kw"]')
elm.clear()
elm.send_keys(u'陈大发')
time.sleep(2)
elm.send_keys(Keys.RETURN)
# page = driver.page_source
# print page
def tearDown(self):
self.driver.close()
if __name__ == "__main__":
unittest.main()
执行结果:
Ran 0 tests in 0.000s
OK
原因:unittest提供了全局的main()方法,使得一个单元测试模块变成可以直接运行的测试脚本,main()方法使用TestLoader类来搜索所有包含在模块中以“test”命名开头的测试方法,并自动执行它们
解决方法:将方法名“baidu_search”改为“test_baidu_search”即可
网友评论