案例1-自动化测试-数据驱动测试-unittest和ddt

#encoding =utf-8
# -*- coding:utf-8 -*-
from selenium import webdriver
import time,unittest
import logging,traceback
import ddt
from selenium.common.exceptions import NoSuchElementException
logger = logging.getLogger('mylogger1')
logger.setLevel(logging.DEBUG)
# 创建一个handler,用于写入日志文件
fh = logging.FileHandler('C:/test.log')
fh.setLevel(logging.DEBUG)
# 再创建一个handler,用于输出到控制台
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
# 定义handler的输出格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)
# 给logger添加handler
logger.addHandler(fh)
logger.addHandler(ch)

logger.info(u'开始打印日记')
@ddt.ddt
class Testdemo(unittest.TestCase):
    def setUp(self):
        self.driver=webdriver.Firefox(executable_path="C:\\webdriver\geckodriver")
    @ddt.data([u"神奇动物在哪里",u"叶茨"],[u"疯狂动物城",u"古德温"],[u"大话西游之月光宝盒",u"hahaha"])
    @ddt.unpack
    def test_date(self,testdata,expectdata):
        url="http://www.baidu.com"
        self.driver.get(url)
        self.driver.implicitly_wait(10)
        try:
            self.driver.find_element_by_id("kw").send_keys(testdata)
            self.driver.find_element_by_id("su").click()
            time.sleep(3)
            self.assertTrue(expectdata in self.driver.page_source)
        except NoSuchElementException,e:
            logger.error(u"查找的页面元素不存在,异常信息:"+str(traceback.format_exc()))
        except AssertionError,e:
            logger.info(u"搜索失败")
        else:
            logger.info(u"搜索通过")

    def tearDown(self):
            self.driver.quit()

if __name__=='__main__':
    unittest.main()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值