51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4235|回复: 13
打印 上一主题 下一主题

python生成的自动化测试报告问题,求大神解答。

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2016-11-25 09:17:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
运行如下脚本,没有报错,但是出来的测试结果却不是我想要的,好像那几个case没有执行一般:

from appium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
import unittest,sys,time,re,datetime,HTMLTestRunner

class Dttest(unittest.TestCase):
      def setUpClass():
          desired_caps={}
          desired_caps['platformName']='Android'
          desired_caps['platformVersion']='4.4.2'
          desired_caps['deviceName']='HUAWEI P7-L00'
          desired_caps['appPackage']='com.tuniu.app.ui'
          desired_caps['appActivity']='.homepage.LaunchActivity'
          driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)

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

      def test_click1():
          driver.find_element_by_id('com.tuniu.app.ui:id/iv_style3_card_1').click()

      def test_click2():
          driver.find_element_by_id('com.tuniu.hotel:id/tv_query').click()

      def test_click3
          driver.find_element_by_id('com.tuniu.hotel:id/iv_product_small_image').click()


if __name__ == '__main__':
    suite = unittest.TestSuite()
    suite.addTest(Dttest('test_click1'))

    suite.addTest(Dttest('test_click2'))

    suite.addTest(Dttest('test_click3'))

    timestr = time.strftime('%Y%m%d%H%M%S',time.localtime(time.time()))
    filename = 'D:\\report\\result_'+timestr+'.html'
    fp = open(filename,'wb')
    runner = HTMLTestRunner.HTMLTestRunner(
        stream=fp,
        title='result',
        description='report'
    )
    runner.run(suite)
    fp.close()


eclipse执行脚本后的返回结果:


生成的测试报告,结果都是error:


这都是什么情况啊?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

推荐
 楼主| 发表于 2016-11-25 13:18:30 | 只看该作者
若尘_51 发表于 2016-11-25 09:53
boy,只能说你没有理解到位,unittest的用法,缺少@classmethod装饰器
详细的内容看看:
https://my.oschin ...

哥,还是不行,一样的啊,求解啊
回复 支持 0 反对 1

使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    推荐
    发表于 2016-12-1 16:48:40 | 只看该作者
    adolf186 发表于 2016-12-1 15:05
    基于原代码添加了这个:

    你的所有的函数都加上self,再试试~~:
    setUpClass(self)、tearDown(self)、.....
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    4#
    发表于 2016-11-25 09:53:04 | 只看该作者
    boy,只能说你没有理解到位,unittest的用法,缺少@classmethod装饰器
    详细的内容看看:
    https://my.oschina.net/lionets/blog/268704?p={{currentPage+1}}

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 积极回复获得测试积点10

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2019-12-31 08:59
  • 签到天数: 975 天

    连续签到: 1 天

    [LV.10]测试总司令

    5#
    发表于 2016-11-25 10:14:35 | 只看该作者
    试试LS的方法
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2016-11-25 13:18:56 | 只看该作者

    哥,我是新手,能说详细一些不?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    7#
    发表于 2016-11-25 17:10:54 | 只看该作者
    adolf186 发表于 2016-11-25 13:18
    哥,还是不行,一样的啊,求解啊

    把最新写的脚本附一份上来,还有报告里面的报错信息也截一下图
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2016-12-1 14:13:40 | 只看该作者
    若尘_51 发表于 2016-11-25 17:10
    把最新写的脚本附一份上来,还有报告里面的报错信息也截一下图

    都在上面呢,脚本和报告的错误截图
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2017-11-7 16:44
  • 签到天数: 290 天

    连续签到: 1 天

    [LV.8]测试军长

    9#
    发表于 2016-12-1 14:18:17 | 只看该作者
    adolf186 发表于 2016-12-1 14:13
    都在上面呢,脚本和报告的错误截图

    不是最新的,我是要看:
    你的脚本是在哪里加上@classmethod装饰器,以及加上@classmethod装饰器的报错信息。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
     楼主| 发表于 2016-12-1 14:26:58 | 只看该作者
    若尘_51 发表于 2016-11-25 17:10
    把最新写的脚本附一份上来,还有报告里面的报错信息也截一下图

    貌似好像只是生成了报告,但是却没有运行用例
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
     楼主| 发表于 2016-12-1 15:05:10 | 只看该作者
    若尘_51 发表于 2016-12-1 14:18
    不是最新的,我是要看:
    你的脚本是在哪里加上@classmethod装饰器,以及加上@classmethod装饰器的报错信 ...

    基于原代码添加了这个:


    报错信息:
    Traceback (most recent call last):
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\unittest\suite.py", line 163, in _handleClassSetUp
        setUpClass()
    TypeError: setUpClass() takes 0 positional arguments but 1 was given

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
      File "D:\appium\workspace\new test\Simple-test.py", line 72, in <module>
        runner.run(suite)
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\HTMLTestRunner.py", line 628, in run
        test(result)
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\unittest\suite.py", line 84, in __call__
        return self.run(*args, **kwds)
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\unittest\suite.py", line 114, in run
        self._handleClassSetUp(test, result)
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\unittest\suite.py", line 170, in _handleClassSetUp
        self._addClassOrModuleLevelException(result, e, errorName)
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\unittest\suite.py", line 216, in _addClassOrModuleLevelException
        result.addError(error, sys.exc_info())
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\HTMLTestRunner.py", line 584, in addError
        output = self.complete_output()
      File "C:\Users\zhengtao\AppData\Local\Programs\Python\Python35\lib\HTMLTestRunner.py", line 558, in complete_output
        return self.outputBuffer.getvalue()
    AttributeError: '_TestResult' object has no attribute 'outputBuffer'

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
     楼主| 发表于 2016-12-1 17:32:31 | 只看该作者
    若尘_51 发表于 2016-12-1 16:48
    你的所有的函数都加上self,再试试~~:
    setUpClass(self)、tearDown(self)、.....

    我之前试过,会报错说是self入参没有定义之类的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
     楼主| 发表于 2016-12-1 18:03:23 | 只看该作者
    若尘_51 发表于 2016-12-1 16:48
    你的所有的函数都加上self,再试试~~:
    setUpClass(self)、tearDown(self)、.....

    我按你提示的试了一下,脚本运行不报错了,测试报告也生成了,但是问题又来啦
    用例都是执行报错的,好愁啊

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
     楼主| 发表于 2016-12-3 11:48:33 | 只看该作者
    若尘_51 发表于 2016-12-1 16:48
    你的所有的函数都加上self,再试试~~:
    setUpClass(self)、tearDown(self)、.....

    我的问题解决了,谢谢啊
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-17 06:34 , Processed in 0.074737 second(s), 26 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表