接口测试报告的输出

news2024/9/30 11:27:52

1、对小极客首页跳转接口测试

2、写接口用例

以TestXjkLinks.py命名

 1 # --*-- coding:utf-8 --*--
 2 
 3 import requests
 4 import unittest
 5 import time
 6 
 7 
 8 class TestXjkLinks(unittest.TestCase):
 9 
10     def test_learn(self):
11         u"""首页学习接口"""
12         url = 'http://www.xiaojike.cn/learn/'
13         result = requests.get(url)
14         time.sleep(1)
15         # 响应状态码断言
16         real_code = result.status_code
17         self.assertEqual(200, real_code)
18         # 未登陆时文案断言
19         real_text = result.text
20         expect_text = '使用用户名密码登录'
21         self.assertIn(expect_text, real_text)
22 
23     def test_explore(self):
24         u"""首页发现接口"""
25         url = 'http://www.xiaojike.cn/explore/'
26         result = requests.get(url)
27         time.sleep(1)
28         # 响应状态码断言
29         real_code = result.status_code
30         self.assertEqual(200, real_code)
31         # 文案断言
32         real_text = result.text
33         expect_text = '有趣的作品'
34         self.assertIn(expect_text, real_text)
35 
36     def test_login(self):
37         u"""首页登陆接口"""
38         url = 'http://www.xiaojike.cn/sign_in/'
39         result = requests.get(url)
40         time.sleep(1)
41         # 响应状态码断言
42         real_code = result.status_code
43         self.assertEqual(200, real_code)
44         # 文案断言
45         real_text = result.text
46         expect_text = '注册不到1秒钟'
47         self.assertIn(expect_text, real_text)
48 
49     def test_err(self):
50         u"""判断错误的例子"""
51         self.assertNotEqual(3, 3)
52 
53 
54 if __name__ == '__main__':
55     unittest.main()
56     print('小极客首页接口测试成功')

3、写执行测试用例脚本  有兴趣的可以保存执行用例的脚本,基本上时通用的


 1 # ! /usr/bin/env python3
 2 # coding:utf-8
 3 
 4 """
 5 Created on 2018-05-30
 6 Project: learning
 7 @Author:wuya
 8 """
 9 
10 import os, time, unittest
11 import HTMLTestRunner
12 
13 
14 report_path = os.getcwd()  # 设置保存报告的路径,这儿设置的是与执行文件在同一个目录下
15 now = time.strftime("%Y-%m-%d %H:%M", time.localtime(time.time())) # 获取当前时间
16 title = u"小极客首页接口测试" # 标题
17 report_abspath = os.path.join(report_path, title + now + ".html") # 设置报告存放和命名
18 
19 # 导入用例
20 def all_case():
21     case_path = os.getcwd() # 用例路径,这儿的用例和执行文件在同一目录下
22     discover = unittest.defaultTestLoader.discover(case_path,
23                                                    pattern="Test*.py") # 添加用例,在case_path的路径下,所有以Test开头的文件都当做用例文件执行
24     print(discover)
25     return discover
26 
27 
28 if __name__ == "__main__":
29     fp = open(report_abspath, "wb") # 保存报告文件
30     runner = HTMLTestRunner.HTMLTestRunner(stream=fp,
31                                            title=title + ':',)
32     runner.run(all_case()) # 执行用例
33     fp.close()

4、执行查看结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1072890.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 13 骁龙相机点击拍照流程分析(一)——点击拍照到更新到左下角缩略图

一.背景 由于最近客户定制需要将文件挂载类型修改为sdcardfs,由于修改了文件挂载类型,导致了骁龙相机拍照后不能点击进入相册,故对骁龙相机从点击事件开始进行问题的排查,此处不介绍最终的sdcardfs挂载后的问题解决方案,有兴趣可以参考jira单:SW2QCM6490-1233 二.流程介…

运行软件提示丢失msvcr120.dll文件怎么办?msvcr120.dll丢失的5个最新解决方法

找不到msvcr120.dll是一个常见的错误信息,通常会在用户尝试运行某些程序或游戏时出现。msvcr120.dll是 Windows 操作系统中的一个动态链接库文件,它包含了 C 运行时库的一些函数和类,对于许多程序和游戏的正常运行至关重要。 当用户遇到找不到…

化妆品用乙基己基甘油全球市场总体规模2023-2029

乙基己基甘油又名辛氧基甘油,分子式 C11H24O3,分子量 204.306,沸点 325℃,密度 0.962,无色液体,涂抹性能适中的润肤剂、保湿剂及润湿剂。它能够在提高配方滋润效果的同时又具有柔滑的肤感。加入在某些膏霜体…

深度学习基础知识 nn.Sequential | nn.ModuleList | nn.ModuleDict

深度学习基础知识 nn.Sequential | nn.ModuleList | nn.ModuleDict 1、nn.Sequential 、 nn.ModuleList 、 nn.ModuleDict 类都继承自 Module 类。2、nn.Sequential、nn.ModuleList 和 nn.ModuleDict语法3、Sequential 、ModuleDict、 ModuleList 的区别…

一文熟练使用python修改Excel中的数据

使用python修改Excel中的内容 1.初级修改 1.1 openpyxl库的功能: openpyxl模块是一个读写Excel 2010文档的Python库,如果要处理更早格式的Excel文档,需要用到额外的库,例如Xlwings。openpyxl是一个比较综合的工具,能…

HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Stack

堆叠容器,子组件按照顺序依次入栈,后一个子组件覆盖前一个子组件。该组件从API Version 7开始支持。可以包含子组件。 一、接口 Stack(value?: { alignContent?: Alignment }) 从API version 9开始,该接口支持在ArkTS卡片中使用。 二、…

缓存雪崩、缓存穿透和缓存击穿产生的原因及解决方案

目录 什么是缓存雪崩? 缓存雪崩的解决方案 什么是缓存穿透? 缓存穿透的解决方案 什么是缓存击穿? 缓存击穿的解决方案 缓存在提高系统性能和响应速度方面起着关键作用,但在实际应用中,我们常常面临一些与缓存相…

关于打造安卓测试机的方法以及常见问题的解决方式

摘要: 本文主要讲解如何打造安卓测试机,并刷机google原生系统、部署Magisk对测试机进行root的常用方式;并对一些常见问题进行思路解答。本文适合新手学习,大佬请绕过 本次实验使用的设备及环境如下: Nexus 5x 测试机…

【多线程进阶】线程安全的集合类

文章目录 前言1. 多线程环境使用 ArrayList2. 多线程环境使用队列3. 多线程环境使用哈希表3.1 HashTable3.2 ConcurrentHashMap 总结 前言 本文主要讲解 Java 线程安全的集合类, 在之前学习过的集合类中, 只有 Vector, Stack, HashTable, 是线程安全的, 因为在他们的关键方法中…

高端品牌如何利用软文抓住顾客的心?

如今高端品市场价值巨大,但之前由于“口罩”影响和冲击,高端品牌的线上销售份额占比较少,同时得益于互联网和新媒体技术的发展,高端品的利润来源大多数是线上推广进行销售,而软文就是高端品常用的推广方式,…

鉴源论坛 · 观模丨基于软件性质的自动化测试技术

作者 | 熊一衡 华东师范大学软件工程学院博士 苏亭 华东师范大学软件工程学院教授 版块 | 鉴源论坛 观模 社群 | 添加微信号“TICPShanghai”加入“上海控安51fusa安全社区” 在软件开发的生命周期中,测试是至关重要的一环。为了确保软件产品的质量,开…

MOM与MES管理系统有哪些本质上的区别

随着企业业务的不断发展,许多制造企业开始面临车间管理失控、生产不透明等问题。这时候,很多企业选择上线MES生产管理系统来提高生产管理水平。然而,随着企业业务的不断拓展,MES系统也逐渐暴露出其局限性。于是,MOM平台…

详解CAN通信的标识符掩码和标识符列表两种过滤机制

CAN 通信的应用非常广泛,本文不涉及CAN通信的基础配置,重点分析一下STM32和GD32的CAN通信两种ID过滤方式。 首先,不管是STM32还是GD32,实现CAN通信ID过滤的机制和原理一定是一样的,只是用到的寄存器有差别。 1. ID过…

TensorFlow入门(十四、数据读取机制(1))

TensorFlow的数据读取方式 TensorFlow的数据读取方式共有三种,分别是: ①预加载数据(Preloaded data) 预加载数据的方式,其实就是静态图(Graph)的模式。即将数据直接内嵌到Graph中,再把Graph传入Session中运行。 示例代码如下: import tensorflow.compat.v1 as tf tf.disabl…

超好用的IDEA插件推荐!

大家好,Apipost 最新推出IDEA插件V2版本!V2版本主要是Apipost 符合更多用户的需求而推出,支持在插件中获取 token、支持代码完成后在插件中进行 API调试 ,同时也保留了1.0版本部分功能如上传选择目录功能等。 V1版本还会继续保留…

韦东山D1S板子——xfel工具无法烧写bin文件到spi norFlash问题解决

1、早期问题排查 (1)参考博客:《韦东山D1S板子——烧录spi norFlash失败问题排查过程》; (2)早期排查到xfel工具烧写spi norFlash显示成功,但是实际没有烧写进bin文件,怀疑是norFlas…

“揭秘淘宝店铺所有商品接口:一键获取海量热销宝贝信息!“

淘宝店铺所有商品接口可以通过shop id或店铺主链接获取到整店商品,数据包括:商品ID,图片地址,店铺标题,优惠价,价格,销量,宝贝链接等整个店铺的商品。 要使用这个接口,需…

Linux 系统性能瓶颈分析(超详细)

Author:rab 目录 前言一、性能指标1.1 进程1.1.1 进程定义1.1.2 进程状态1.1.3 进程优先级1.1.4 进程与程序间的关系1.1.5 进程与进程间的关系1.1.6 进程与线程的关系 1.2 内存1.2.1 物理内存与虚拟内存1.2.2 页高速缓存与页写回机制1.2.3 Swap Space 1.3 文件系统1…

9个最常用的人体姿态估计模型

“姿态估计?”……“姿态”一词对于不同的人来说可能有不同的含义,但我们不是在讨论阿诺德经典、奥林匹亚或选美表演。 那么,姿态估计到底是什么? 那么,让我们深入探讨这个话题。 推荐:用 NSDT编辑器 快速搭…

【git】git命令行

首先要了解git整个流程的一个分类: workspace:工作区staging area:暂存区/缓存区local repository:版本库或本地仓库remote repository:远程仓库 创建仓库 git clone gitgithub.comxxxxxxxxxxxx//拷贝一份远程仓库 …