测试平台系列(40) 找个开源项目测试

简介: 找个开源项目测试

大家好,我是米洛,一个测试开发博主,world很大, 你应该去看看!


回顾


上周插播了一个github登录的内容,没啥反响。那我们这周就继续完善用例相关的内容。

题外话


其实虽然我在做这样一个测试平台,但其实就像饭哥说的,存在一些问题:

  • 自己的平台没有落地
  • 半成品
  • 自己都没有亲身使用
    确实,虽然上家公司支撑到了百分之90多的业务线,但是里面结合了很多公司的内容,比如grpc微服务自动寻址yapi内部发布系统,数据工厂等相关的内容。
    这个项目虽然和当时的内容如出一辙(换了一种语言实现),但确又不太一样。
    为了更好地支持平台的发展,加上时间关系,所以我打算挑选一个麻雀虽小,但又五脏俱全的项目来进行测试。
    为了后续覆盖率相关的功能,我得找一个开源的Java项目,于是我发现了它,一个博客系统基于springboot+vue+element-ui:

14.jpg

image

一般这样开源的项目都差不多是个半成品,但只要他有完善的登录(token/cookie机制),加上有一部分crud功能就行。

这个地址我已经部署到我自己的服务器了,以后就可以直接来测试这个服务了,但第一步我们先要拎出里面的接口数据。

服务地址: http://47.112.32.195:8081/index.html

开始研究


大概翻阅了一下它的认证模块,采用的是spring-security,这是我没接触过的全新领域。

不过咱们不用慌,先看看他的登录是咋耍的。

15.jpg

请求数据

16.jpg

返回数据

可以看到,它是一个form表单的POST请求,返回的内容还没有token这样的信息。这可如何是好?别怕,我们做这样的工具,不怕特例多,就怕特例少,导致兼容性不好

咱们好像之前只支持了JSON,我们调试一下登录接口,确认一下:

17.jpg

header部分

18.jpg

可以看到登录失败了

找下原因


19.jpg

通过debug发现username是空字符串

项目地址: https://github.com/lenve/VBlog.git

我们把项目拉到本地https://github.com/lenve/VBlog.git debug发现,username是空字符串。


大概率是我们的requests请求的姿势不对,那怎么办呢?

先看看我们现在的requests请求方法怎么封装的。

20.jpg

image

可以看到是这样封装的,然而我们的body是个字符串,但是如果我们要请求form表单的时候,body需要是dict。

改造如下:

21.jpg

image

如果Content-Type里面带有form了,那我们把body要变成dict(通过json.loads)。

改造后实验一下:

22.jpg

image

如此,我们便支持了json还有form的http请求,至于file类型,我们遇到再继续研究。


可是token呢?

别急,我们切换到Cookietab,可以看到Cookie里面已带上了JSESSIONID,我们可通过这个,继续我们后面需要登录的请求。与token相差不大。

23.jpg

image

记一下优化点,当请求类型切换到form/json的时候自动改变Content-Type,这样体验会更好一些!

下一篇,我们开始编写数据初始化相关的工作。比如我要查询一篇文章,需要先登录,那么需要初始化的数据就是上面提到的JSESSIONID




相关文章
|
3月前
|
资源调度 测试技术 Linux
一款接口自动化神器—开源接口测试平台Lim(Less is More)
一款接口自动化神器—开源接口测试平台Lim(Less is More)
133 2
|
5月前
|
分布式计算 测试技术 Spark
通过Langchain实现大模型完成测试用例生成的代码(可集成到各种测试平台)
通过Langchain实现大模型完成测试用例生成的代码(可集成到各种测试平台)
698 0
|
1天前
|
Linux 测试技术 数据安全/隐私保护
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
|
9天前
|
人工智能 监控 数据处理
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
【AI大模型应用开发】【LangSmith: 生产级AI应用维护平台】1. 快速上手数据集与测试评估过程
30 0
|
2月前
|
缓存 运维 Serverless
应用研发平台EMAS产品常见问题之测试检查更新没有反应如何解决
应用研发平台EMAS(Enterprise Mobile Application Service)是阿里云提供的一个全栈移动应用开发平台,集成了应用开发、测试、部署、监控和运营服务;本合集旨在总结EMAS产品在应用开发和运维过程中的常见问题及解决方案,助力开发者和企业高效解决技术难题,加速移动应用的上线和稳定运行。
|
2月前
|
机器学习/深度学习 人工智能 监控
视觉智能平台常见问题之体验产品的美颜测试关掉如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
24 1
|
3月前
|
测试技术
Lim测试平台测试报告说明
Lim测试平台测试报告说明
33 2
|
3月前
|
SQL 测试技术 数据库连接
Lim接口测试平台-接口测试功能详解
Lim接口测试平台-接口测试功能详解
47 1
|
3月前
|
SQL 监控 测试技术
Lim测试平台变量使用规则介绍
Lim测试平台变量使用规则介绍
28 0
|
3月前
|
测试技术
使用Lim测试平台快速完成批量造数
使用Lim测试平台快速完成批量造数
31 1

热门文章

最新文章