找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手

常见的断言:
1、assertequal
2、assertnotqual
3、assertFals
4、assertTrue
5、assertNOne
6、assertnotNone



1、断言的使用 assert False
#coding:utf-8
import re
#python+selenium 框架
from selenium import  webdriver
from time import sleep
import unittest #导入对应的unittest框架包


#unittest框架结构如下

#首先创建测试类,该类且要继承TestCase类
class foo(unittest.TestCase):

    #初始化测试环境
    #setUo用于设置用例初始化部分,在测试用例前,这个方法中的函数(脚本)将先会执行
    #如:对浏览器操作,对链接数据库
    def setUp(self):
        self.dr=webdriver.Chrome()
        self.dr.get('http://www.baidu.com')
        self.dr.maximize_window()
        sleep(2)

    #所有执行的测试用例一个或者多个
    def test_login(self):
        self.dr.find_element_by_id('kw').send_keys('111111')
        self.dr.find_element_by_id('su').click()
        sleep(5)

    # def test_info(self):
    #     pass
    #还原测试环境(每执行一个用例都会执行该方法,保证下一个用例执行的环境)
    #tearDown该方法是在用例执行后调用,主要用来还原环境,如:退出浏览器,关闭数据库
    def tearDown(self):
        self.dr.quit()
#执行测试用例
if __name__=='__main__':
    unittest.main() #main在这个py文件就是自己的意思
from selenium import webdriver
import unittest
from time import sleep
import HTMLTestRunnerCN


class foo(unittest.TestCase):
    # 初始化测试环境
    # setUp是用于设置用例初始化部分,在测试用例执行前,这个方法中的函数(脚本)将
    # 先会执行如:对浏览器操作、连接数据库等
    def setUp(self):
        self.dr = webdriver.Chrome()
        self.dr.get('http:/www.baidu.com')
        self.dr.maximize_window()
        sleep(2)

    # 所有执行的测试用例如:一个或者多个

    def test_dcs(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'多测师')
        driver.find_element_by_id('su').click()
        sleep(6)

    def test_dn(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'达内')
        driver.find_element_by_id('su').click()
        sleep(6)

    def test_bdqn(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'北大青鸟')
        driver.find_element_by_id('su').click()
        sleep(6)
    # 还原测试环境(每执行一个用例都会执行该方法,保证下一个用例执行的环境)
    # tearDown该方法是在用例执行后调用,主要用来还原环境如:退出浏览器、关闭数据库等
    def tearDown(self):
        self.dr.quit()
def suit():
    suite = unittest.TestSuite()
    suite.addTests([foo('test_dcs'),foo('test_dn'),foo('test_bdqn')])
    return suite



# 执行测试用例
if __name__ == '__main__':
    yy=suit()
    html="d:\\XIAOWANG.HTML" #指定报告路径
    fp=file(html,'wb') #'wb'表示只写打开或新建一个二进制文件,只允许写数据
    run=HTMLTestRunnerCN.HTMLTestRunner(stream=fp,title=u'百度搜索报告',description=u'用例执行报告')
    run.run(yy)
from selenium import webdriver
import unittest
from time import sleep
import HTMLTestRunnerCN


class foo(unittest.TestCase):
    # 初始化测试环境
    # setUp是用于设置用例初始化部分,在测试用例执行前,这个方法中的函数(脚本)将
    # 先会执行如:对浏览器操作、连接数据库等
    def setUp(self):
        self.dr = webdriver.Chrome()
        self.dr.get('http:/www.baidu.com')
        self.dr.maximize_window()
        sleep(2)

    # 所有执行的测试用例如:一个或者多个

    def test_dcs(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'多测师')
        driver.find_element_by_id('su').click()
        sleep(6)

    def test_dn(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'达内')
        driver.find_element_by_id('su').click()
        sleep(6)

    def test_bdqn(self):
        driver = self.dr
        driver.find_element_by_id('kw').send_keys(u'北大青鸟')
        driver.find_element_by_id('su').click()
        sleep(6)
    # 还原测试环境(每执行一个用例都会执行该方法,保证下一个用例执行的环境)
    # tearDown该方法是在用例执行后调用,主要用来还原环境如:退出浏览器、关闭数据库等
    def tearDown(self):
        self.dr.quit()
def suit():
    suite = unittest.TestSuite()
    suite.addTests([foo('test_dcs'),foo('test_dn'),foo('test_bdqn')])
    return suite



# 执行测试用例
if __name__ == '__main__':
    yy=suit()
    html="d:\\XIAOWANG.HTML" #指定报告路径
    fp=file(html,'wb') #'wb'表示只写打开或新建一个二进制文件,只允许写数据
    run=HTMLTestRunnerCN.HTMLTestRunner(stream=fp,title=u'百度搜索报告',description=u'用例执行报告')
    run.run(yy)
#coding:utf-8
import re
#python+selenium 框架
from selenium import  webdriver
from time import sleep
import unittest #导入对应的unittest框架包


#unittest框架结构如下

#首先创建测试类,该类且要继承TestCase类
class foo(unittest.TestCase):

    #初始化测试环境
    #setUo用于设置用例初始化部分,在测试用例前,这个方法中的函数(脚本)将先会执行
    #如:对浏览器操作,对链接数据库
    def setUp(self):
        self.dr=webdriver.Chrome()
        self.dr.get('http://www.baidu.com')
        self.dr.maximize_window()
        sleep(2)

    #所有执行的测试用例一个或者多个
    def test_login(self):
        self.dr.find_element_by_id('kw').send_keys('111111')
        self.dr.find_element_by_id('su').click()
        sleep(5)

    # def test_info(self):
    #     pass
    #还原测试环境(每执行一个用例都会执行该方法,保证下一个用例执行的环境)
    #tearDown该方法是在用例执行后调用,主要用来还原环境,如:退出浏览器,关闭数据库
    def tearDown(self):
        self.dr.quit()
#执行测试用例
if __name__=='__main__':
    unittest.main() #main在这个py文件就是自己的意思
#coding:utf-8
import re
#python+selenium 断言
from selenium import  webdriver
from time import sleep
dr=webdriver.Chrome()
dr.get('http://www.baidu.com')
dr.maximize_window()
sleep(2)
#获取文本值 文本值都是><里面的
aa=dr.find_element_by_xpath('//*[@id="u1"]/a[1]').text #xpath里面的是路径是新闻,所以可以走下去,如果不是,就断言走不了
#使用assert False进行断言
if not (aa==u'新闻'):
    print '%s'%aa
    assert False
#如何获取value值
value=dr.find_element_by_id('su').get_attribute('value')
#使用assert False进行断言
if not (value==u'百度一下'):
    print '%s'%value
    assert False

dr.find_element_by_id('kw').send_keys(u'世界和平')
unittest是python自带的一个框架
使用unittest框架执行用例的优点:提供用例组织方法
                                                        提供丰富的日志和清晰用例的执行后的测试报告
unittest中包括:TestCase类
                          TestSuite类
                          TextTestRunner类
使用unittest框架执行用例时,对我们用例命名有一定的要求,因为我们的测试类都是以test开头,那么我们的测试用例同样要以test打头进行命名


分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册