7、执行 suite 后,result.html 测试报告中,测试结果全部显示为通过原因分析

测试用例中,断言 异常后,必须 raise 抛出异常,

若无raise ,则测试报告中测试结果全部显示为通过。

抛出后,显示实际测试结果,通过/未通过

 1 __author__ = ‘Administrator‘
 2
 3 import unittest
 4 from study_demo.demo_0212.http_request_util import Http_Request_Util
 5 from ddt import ddt,data,unpack
 6 from study_demo.demo_0212.excel_util import Excel_util
 7
 8
 9 @ddt
10 class Test_Case_demo(unittest.TestCase):
11
12     #实例化 Excel_util()类
13     excel_util = Excel_util(‘test_datas.xlsx‘,‘Sheet1‘)
14
15     #引用 Excel_util 模块,调用 read_excel()方法,提供测试数据
16     test_datas = excel_util.read_excel()
17
18     #引用 ddt,* 表示去一层外套,即将test_datas 由list,变为 dict,取dict中的数据作为 item
19     @data(*test_datas)
20
21     def test_case_01(self,item):
22
23         h_util = Http_Request_Util()
24
25         res = h_util.http_request_demo(item[‘mold‘],item[‘url‘],item[‘params‘])
26
27         #断言:如果 预期结果 = 实际结果,则 测试结果为 Pass
28
29         #此处返回值为 text 格式,而并非 json() 格式  -- json 返回数据为 单引号,text 返回的为双引号
30         actual_result = res.text
31         test_result = ‘‘
32
33         try:
34             self.assertEqual(item[‘expect_result‘],actual_result)
35
36             test_result = ‘Pass‘
37
38         #否则,测试结果为 Fail
39         except Exception as e:
40
41             test_result = ‘Fail‘
42
43             #抛出异常:若无抛出,则result.html测试报告中,测试结果全部显示为通过
44             raise Exception (‘这里出错了‘)
45
46         #最后,执行excel 写回操作,将实际结果 和 测试结果 写回到excel中
47         finally:
48
49             self.excel_util.write_back(item[‘caseId‘]+1,actual_result,test_result)
50
51         print(‘正在执行第 {} 条测试用例‘.format(item[‘caseId‘]))
52         print(‘测试数据为 {}‘.format(item[‘params‘]))
53         print(‘返回数据为 {}‘.format(item[‘actual_result‘]))
54
55             # print(‘ex‘, item[‘expect_result‘])
56             # print(‘ac‘, actual_result)
57             # print(test_result)
58             # print(res.json())
59             # print(res.text)

原文地址:https://www.cnblogs.com/little-little-bai/p/10368387.html

时间: 2024-10-22 15:33:05

7、执行 suite 后,result.html 测试报告中,测试结果全部显示为通过原因分析的相关文章

关于部分Hackintosh机型使用Clover引导后关于本机中“内存”选项卡不显示Bug的修复

问题描述: 当smbios设置为imac pro时,“关于本机”中的内存选项卡不显示,需要设置为imac19机型才能显示,虽然对性能和使用没有影响,但是部分情有独钟于iMac Pro机型的小伙伴还是强迫症发作,下面就这个问题给出解决方案: 1:网上有修正的注入kext,这里不推荐,我一向是不提倡使用过多的第三方kext 2:对config.list文件做一个小小的修正,这个方法是今天要分享给大家的 步骤如下: a,打开config.list文件,可以用bbedit或者CC,这里为了方便推荐使用c

ant 执行java文件,java文件中含中文,显示乱码

在build.xml文件run target下添加下面一行 <sysproperty key="file.encoding" value="UTF-8" />

硬件设计中的30个错误想法与原因分析

一:成本节约 现象一:这些拉高/拉低的电阻用多大的阻值关系不大,就选个整数5K吧 点评:市场上不存在5K的阻值,最接近的是 4.99K(精度1%),其次是5.1K(精度5%),其成本分别比精度为20%的4.7K高4倍和2倍.20%精度的电阻阻值只有1.1.5.2.2.3.3.4.7.6.8几个类别(含10的整数倍):类似地,20%精度的电容也只有以上几种值,如果选了其它的值就必须使用更高的精度,成本就翻了几倍,却不能带来任何好处. 现象二:面板上的指示灯选什么颜色呢?我觉得蓝色比较特别,就选它吧

在Struts.xml中的result元素指的是:指定动作类的动作方法执行完后的结果视图.

result结果集 上一篇文章主要讲Struts2框架(4)---Action类访问servlet这篇主要讲result结果集 在Struts.xml中的result元素指的是:指定动作类的动作方法执行完后的结果视图. (1)局部结果和全局结果 他有两个属性: name:字符串,与动作方法返回的值一致.默认是success type:指定处理结果的结果类型的别名.默认值是dispatcher 首先处理结果分为两种,一种是局部结果一种是全局结果. 局部结果: <action name="lo

Struts2中使用execAndWait后,在 Action中调用getXXX()方法报告java.lang.NullPointerException异常的原因和解决方法

使用 Struts2 编写页面,遇到一个要长时间运行的接口,因此增加了一个execAndWait ,结果在 Action 中调用 getContext()的时候报告异常 1 ActionContext context = ActionContext.getContext(); 2 ServletContext servletContext = (ServletContext) context.get(ServletActionContext.SERVLET_CONTEXT); //抛空指针异常

给listview加动画,让动画执行结束后再刷新

问题:当给listview的条目加动画时,例如添加一个条目或者移除一个条目,动画效果会和添加删除条目的逻辑同时进行,因为动画并不是阻塞式的,这样会造成动画还没有结束,条目已经添加或者移除,从而动画作用在下面一个条目上面. 解决办法:想办法让动画执行完了之后再进行条目的添加或者移除操作(也就是刷新数据适配器),可以通过设置动画监听来实现,将要添加或者删除条目的逻辑放到动画监听的方法中,可以放到动画结束时调用的方法中,这样就保证了动画先执行,然后才刷新数据适配器 holder.iv_lock.set

JAVA设计方法思考之如何实现一个方法执行完毕后自动执行下一个方法

今天编程时,突然想起来在一些异步操作或Android原生库的时候,需要我们实现一些方法, 这些方法只需要我们具体实现,然后他们会在适当的时候,自动被调用! 例如AsyncTask,执行玩doInBackground()后会执行处理结果的postResult()方法,但我们并没有设置过他们的执行顺序. 以前只知道他们的运行原理,但不知道具体的实现方法,细想起来,这是一个相当不错的代码设计,所以决定研究一下. 因为一开始是通过实现方法来具体实现那些需要被执行的方法的,所以以为实现的方式是接口, 思索

ajax执行完成后,再执行下面的代码

一般ajax设置的都是异步的,但是有时候我们有这种需求,就是等ajax执行完成之后,在执行下面的函数. 1设置async:false 在jq中直接设置了ajax是异步的还是同步的 一般如果不写这个,默认的就是异步的:但是当async:false表示的就是同步的: 2将需要执行完成后的执行的代码放在ajax成功函数中 function ajax(){ $ajax({ url:xxxx, data:{}, dataType:json, success:function(data){ say(): }

使用python写自动执行脚本并将结果返回到html中

终于在今天完成了django项目开发的一个小项目,使用python写一个自动化上线的项目.使用到了python3.5,django 1.11.2,ansible,centos7. 功能描述如下: 1.使用网页点击要上线的项目 2.在后台系统执行过程中浏览器等待后台命令调用 3.在上线完成后将后台执行的结果回传到浏览器中. 步骤解说: 1.在django中要分清楚get和post的请求方式 2.使用subprocess.Popen调用时stdout时是byes类型需要使用str(stdout,en