Selenium Python HTMLTestRunner报告输出为空 [英] Selenium Python HTMLTestRunner report output is blank

查看:465
本文介绍了Selenium Python HTMLTestRunner报告输出为空的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在将HTMLtestRunner用于我的Selenium Python测试结果报告. 测试完成时将生成报告文件,但是当我打开文件时,报告文件为空白.该文件为0kb
什么都没有写入报告文件.

I am using the HTMLtestRunner for my Selenium Python test result report. The report file is being generated when the test completes but when i open the file it is blank. The file is 0kb
Nothing is being written to the report file.

我的测试套件代码实现是:

My test suite code implementation is:

import sys, os
import unittest
from HTMLTestRunner2 import HTMLTestRunner
from Utilities.HelperMethods import get_datetime_now
import Regression_TestCase.RegressionProject_TestCase2


class Test_Suite(unittest.TestCase):
    def test_main(self):
        # suite of TestCases
        self.suite = unittest.TestSuite()
        test_result_dir = os.path.join(
            r"C:\\Webdriver\\ClearCore Regression Test\\ClearCore - Regression Test\\TestReport\\")  # Test report goes here

        # open the report file
        outfile = file(test_result_dir + "\TestReport_" + get_datetime_now() + ".html", "wb")

        runner = HTMLTestRunner.HTMLTestRunner(stream=outfile,
                                               title='Test Report',
                                               description='Selenium - ClearCore Regression project automated test')

        self.suite.addTests([
            unittest.defaultTestLoader.loadTestsFromTestCase(
                Regression_TestCase.RegressionProject_TestCase2.RegressionProject_TestCase2)
        ])
        runner = unittest.TextTestRunner()
        runner.run(self.suite)


import unittest

if __name__ == "__main__":
    # unittest.main()
    HTMLTestRunner.main()

我的RegressionProject_TestCase2代码段是:

My RegressionProject_TestCase2 snippet is:

from Base.BaseTestCase import BaseTestCase
from HTMLTestRunner2 import HTMLTestRunner
import os
from Locators import Globals
# More imports

class RegressionProject_TestCase2(BaseTestCase):

### Test Login ###

def test_000001_a1_login_empty_user_id_and_empty_password(self):
    try:
        print "*** testlogin_empty_user_id_and_empty_password ***"
        self.login_page.user_login_invalid(Globals.login_username_blank, Globals.login_password_empty)
        self.assertTrue(self.login_page.is_invalid_user_error_text_displayed(), "login_empty_user_id_and_empty_password failed. Please see log for details")
    except Exception:
        base_page = BasePage(self.driver)
        base_page.save_screenshot("Test login_empty_user_id_and_empty_password")
        raise

### Lots more test cases

if __name__ == "__main__":
#unittest.main()
HTMLTestRunner.main()

为什么报表输出为空白?请为我的测试套件提供一些帮助,以生成html报告.

Why is the report output blank? Some help please with my test suite to generate the html report.

谢谢里亚兹

推荐答案

我已将代码移至另一台服务器,并且重新编写了测试套件以创建htmltestRunner HTML报告.现在对我有用.

I have moved my code to another server and I re-wrote the test suite to create the htmltestRunner HTML report. It is working for me now.

我的测试套件实现是:

import sys
import unittest
from HTMLTestRunner2 import HTMLTestRunner
from Utilities.HelperMethods import get_datetime_now
import os
import unittest
import Regression_TestCase.RegressionProjectEdit_TestCase


class Test_Suite(unittest.TestCase):
    def test_main(self):


        tests_regression = unittest.TestLoader().loadTestsFromTestCase(
            Regression_TestCase.RegressionProjectEdit_TestCase.RegressionProject_TestCase_Project_Edit)


        regression_tests = unittest.TestSuite([tests_regression])


def suite():
    """
        Gather all the tests from this module in a test suite.
    """
    test_suite = unittest.TestSuite()
    test_suite.addTest(unittest.makeSuite(Regression_TestCase.RegressionProjectEdit_TestCase.RegressionProject_TestCase_Project_Edit))
    return test_suite


mySuit = suite()

# output to a file
test_result_dir = os.path.join(
    r"E:\\test_runners 2 edit project\\selenium_regression_test_5_1_1\\TestReport\\")


# open the report file
outfile = file(test_result_dir + "\ClearCore501_Automated_GUI_TestReport.html", "wb")

# configure HTMLTestRunner options
runner = HTMLTestRunner.HTMLTestRunner(stream=outfile,
                                       title='Test Report',
                                       description='Selenium - ClearCore 501 Regression edit project automated test')

# run the suite using HTMLTestRunner
runner.run(mySuit)

if __name__ == "__main__":
    # unittest.main()
    HTMLTestRunner.main()

这篇关于Selenium Python HTMLTestRunner报告输出为空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆