只打开一次浏览器,生成html测试报告<小紧张中......>

from selenium import webdriverimport unittestimport time

class Blog(unittest.TestCase):    """登录博客园"""

# 添加@classmethod装饰器,只打开浏览器一次    @classmethod    def setUpClass(cls):        """初始化"""        cls.browser = webdriver.Chrome()        cls.url = ‘https://passport.cnblogs.com/user/signin‘        cls.browser.get(cls.url)        cls.browser.implicitly_wait(30)        cls.browser.maximize_window()

def login(self, username, password):        """登录帐号密码参数化"""        self.browser.find_element_by_id(‘input1‘).send_keys(username)        self.browser.find_element_by_id(‘input2‘).send_keys(password)        self.browser.find_element_by_id(‘signin‘).click()        time.sleep(3)

def is_login_sucess(self):        """判断是否获取登录后账户名称"""        time.sleep(2)        try:            text = self.browser.find_element_by_id(‘lnk_current_user‘).text            print(text)            return True        except:            return  False

def back_out(self):        # 退出返回登录页面        time.sleep(2)        self.browser.find_element_by_xpath(‘//*[@id="header_user_right"]/a[5]‘).click()        time.sleep(2)        # alert方法去掉退出弹框        s = self.browser.switch_to_alert()        s.accept()        time.sleep(2)        self.browser.find_element_by_xpath(‘//*[@id="header_user_left"]/a[1]‘).click()        time.sleep(2)

def clear_box(self):        """清空输入框"""        self.browser.find_element_by_id(‘input1‘).clear()        self.browser.find_element_by_id(‘input2‘).clear()        time.sleep(1)

def test_01(self):        """调用login函数登录"""        self.login(‘uesrname‘, ‘password‘)        result = self.is_login_sucess()        self.assertTrue(result)

def test_02(self):        """错误的示范"""        self.back_out()        self.clear_box()        self.login(‘1‘, ‘2‘)        result = self.is_login_sucess()        self.assertTrue(result, msg=‘失败了呀,没有获取登录后的账户名称呢!‘)

@classmethod    def tearDownClass(cls):        cls.browser.quit()

if __name__ == ‘__main__‘:    """生成html报告"""    import HTMLTestRunner    # now = time.s    now = time.strftime(‘%Y-%m-%d %H-%M-%S‘)    report_title = ‘博客园登录自动化测试‘    # report_path = r‘D:\PythonProject\com\report.html‘    report_path = ‘D:\\PythonProject\\com\\‘+ now + ‘report.html‘    explain = ‘博客园登录测试报告‘

test_suite = unittest.TestSuite()    test_suite.addTest(Blog(‘test_01‘))    test_suite.addTest(Blog(‘test_02‘))

with open(report_path, ‘wb‘) as fp:        runner = HTMLTestRunner.HTMLTestRunner(title=report_title, stream=fp, description=explain)        runner.run(test_suite)        fp.close()
时间: 2024-10-21 12:44:20

只打开一次浏览器,生成html测试报告<小紧张中......>的相关文章

Selenium框架所有用例打开一次浏览器方法实现(Java)

之前写的自动化测试框架(PageObject设计思路)一直都是每执行一条用例,启动一次浏览器驱动就打开一次浏览器,一条用例执行结束之后就关闭浏览器.这样做不仅浪费时间而且每次都重启关闭chromedriver.exe也挺浪费资源的.所有根据TestNG生命周期的各个注解的执行顺序,对相关方法做了一点点的改动,实现了这一功能. 首先看一下PageFactory类,这个类主要是利用Java反射的机制,调用页面类的构造方法生成一个新的页面对象,这里我在这个类里面定义了一个WebDriver对象,以后这

unittest生成html测试报告

前言 最近一直在学习unittest,之前也有看到自动生成的测试报告:今天想着感觉着手实现以下吧: 我是小白,当然还是从最基础的开始: 今天的主角: HTMLTestRunner(HTMLTestRunner是python标准库unittest的一个扩展,用于生成易于使用的html测试报告) HTMLTestRunner下载安装      下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 操作(windows): 1:点击HTMLT

我是如何将Bandwagonhost VPS安装VNC实现远程链接打开FireFox火狐浏览器

我们选择和使用便宜VPS主机并不都是用来搭建网站WEB环境建站使用的,在很多时候我们可以将Linux系统安装模拟Windows桌面实现需要 在Windows系统中才能执行的任务项目.但是,由于Windows服务器较少而且成本高,所以我们会依托Linux VPS主机实现.看到不少的网友在群里讨论如何将Linux VPS安装远程桌面的技术,这里我考虑到可以安装VNC.部署Window系统. 一般而言,搭建VNC远程桌面链接还是比较简单的,如果是要直接安装Windows系统得需要服务器支持,至少是要K

转 生成 HTMLTestRunner 测试报告

转自:http://www.cnblogs.com/hero-blog/p/4128575.html 04.生成 HTMLTestRunner  测试报告 1.HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展.它生成易于使用的 HTML 测试报告 1>下载HTMLTestRunner.py文件,地址为: http://tungwaiyip.info/software/HTMLTestRunner.html Windows平台: 将下载的文件放入...\P

Python 同一文件中,有unittest不执行“if __name__ == &#39;__main__”,不生成HTMLTestRunner测试报告的解决方案

1.问题:Python中同一个.py文件中同时用unittest框架和HtmlReport框架后,HtmlReport不被执行. 2.为什么?其实不是HtmlReport不被执行,也不是HtmlReport不生成测试报告,是因为if __name__ == '__main__'中的代码根本没执行好嘛! 3.解决方案的来源:因为最开始我的main代码中没有写print打印语句.没有生成HTML报告,我也在网上找了很久的方法,后来才怀疑是不是没有运行main方法,于是写了个print语句,果然没有运

Selenium3+生成HTMLTestRunner测试报告+发送带附件邮箱

1.导入各功能模块 from HTMLTestRunner import HTMLTestRunner from email.mime.text import MIMEText #发送邮件正文 from email.mime.multipart import MIMEMultipart #发送邮件附件 from email.header import Header import smtplib import unittest import time import os 2.定义发送邮件(QQ邮箱

Appium+Python之生成html测试报告

思考:测试用例执行后,如何生成一个直观漂亮的测试报告呢? 分析:1.unittest单元测试框架本身带有一个textTestRunner类,可以生成txt文本格式的测试报告,但是页面不够直观 2.我们可以导入第三方库,比如常用的HTMLTestRunner类,可以生成html格式测试报告 3.首先去下载HTMLTestRunner_PY3.py脚本(我这里采用Python3.7),然后放置在Python3.7路径下的Lib目录下,使用时需要导入(即import  HTMLTestRunner_P

Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告2(使用PyCharm )

1.说明 在我前一篇文件(Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使用IDLE ))中简单的写明了,如何生产测试报告,但是使用IDLE很麻烦,而且在实际的项目中也不方便,所以,查了很多资料来研究如何在PyCharm中生成测试报告,故此记录一下(命名什么的不规范就不要纠结了). 2.步骤 第一步:下载HTMLTestRunner.py 参考:Python+Selenium----使用HTMLTestRunner.py生成自动化测试报告1(使

Python用HTMLTestRunner生成html测试报告

小编的主机:mac 一.引入HTMLTestRunner包 1.下载HTMLTestRunner.py,已上传到网盘,点击下载 2.将HTMLTestRunner.py复制到python安装目录的Lib文件夹下. 可能有的人不知道python安装地址的Lib文件夹在哪里.小编用的是mac,放的地址为:/资源库/Frameworks/Python.framework/Versions/3.6/lib/python3.6 因为看见里面有很多.py结尾的文件,常用到的os.py都在里面,放这里准没错.