• 9
  • 9
分享
  • 怎么才能设计出更好的测试用例呢?——软件测试圈
  • 曼倩诙谐 2022-05-17 09:28:43 字数 1129 阅读 1234 收藏 9

  当我们拿到一个接口,怎么才能设计出更好的测试用例呢 ?从大的方面我们至少要考虑到以下三个方面。

  一.功能方面

  在功能方面,我们要更多考虑的是如何通过不同的输入覆盖不同的业务逻辑 。而这个业务逻辑也可以理解为代码的每一个分支语句,所以,我们的测试就变为如何通过输入不同的参数,然后让代码尽可能的执行到每一个分支。 但是我们又不是做白盒测试,如何才知道覆盖了不同的分支呢 ?这里面除了用到一些测试方法外,还需要对业务有足够的了解,和开发不断确认其实现逻辑 。简单的来说就是从:测试方法设计和发散测试方面去考虑:

  1.测试方法设计:可分为正向测试和反向测试

  正向用例:只输入所有必填参数,验证其结果输入所有的参数,包括非必填参数,验证其结果所有的必填参数和可选参数的组合,验证其结果反向用例:从请求参数考虑:缺少参数,多参,无参,参数错误等 。从输入数据考虑:数据类型错误,数据为空,数据越界。

  2.发散测试:考虑完所有参数的组合外,为了避免遗漏,我们还的抛开用例,从不同角度去考虑,以下两个方面就可以值得尝试 。

  · 和开发确认实现逻辑:在和开发确认实现逻辑的时候,尽可能的问的详细一些,问的过程中,也可以设定一些问题,比如可以问如果输入这样的参数,那么他会有什么的输出呢 ?最后把你没有执行到的逻辑列举出来,通过设计一些数据进行覆盖 。

  · 深入的了解业务:对业务再次熟悉,尽可能的确认业务中的每一个细节,然后根据这些细节考虑接口是否有对应的实现,并尝试着进行测试 。

  二.性能测试

  性能测试主要从俩个方面去考虑,分别是单接口场景和放在某个场景中的性能测试 。

  · 单接口场景:

  针对被测接口进行性能测试,关注其是否满足性能需求 。对被测接口不断的增加压力,关注其UV用户数和TPS的曲线图针对被测接口进行并发测试。

  · 关注其响应时间业务场景:

  就是基于某一个用户经常使用的场景进行规划,该场景中可能包含了多个接口,每个接口只是该场景中某一个业务,所占的用户量也只是一部分 。针对业务场景的性能测试,更多反应实际业务的性能情况 。

  三.安全性测试

  对于我们非专业的安全测试人员来说,我们更多的是关注业务方面的安全测试 ,针对接口的业务安全测试可以进行如下考虑:

  接口是否使用了HTTPS协议接口的请求数据是否加密处理保存到库的关键信息是否做过加密处理是否对一些常用工具的请求做了限制接口是否对同一IP的访问次数做了限制总结。

  最后,当我们再拿到一个接口的时候,就可以尝试着从以上三个方面进行用例的设计了。



作者:叶子   

来源:http://www.51testing.com/html/12/n-4481112.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 工具简介curl是一个命令行工具,通过指定的URL来上传或下载数据,并将数据展示出来。使用场景开发复现问题:测试人员本地的某个请求出现错误,可以将请求信息复制出来,提供给开发本地通过curl命令模拟该请求qa复现问题:线上出现了问题,但是在测试环境由于业务侧改造后我们无法通过页面的方式去模拟线上的请求;这个时候可以将线上的接口请求复制下来在本地curl模拟请求常用命令curl:发出请求,后面跟对应的请求地址,注意url地址是str字符串形式-H:指定请求的请求头信息--data-raw :指定post请求body信息以key,value成对的形式传递-c:将服务器返回的cookie信息写入指定...
            0 0 2178
            分享
          •   特斯拉发布了 2023 年财报,全年总营收 967.73 亿美元(当前约 6928.95 亿元人民币),同比增加 19%。  在财报发布后的电话会议上,马斯克表示特斯拉在研发一款新的低成本汽车方面“已取得相当深入的进展”,不过没有透露具体细节或时间安排。马斯克称不会在业绩电话会议上讨论产品发布。  马斯克还表示,中国汽车制造商是世界上最具竞争力的车企,他们将在本国以外取得巨大成功,“坦率地说,如果不设置贸易壁垒,他们几乎会轻易击败世界上大多数其他汽车公司。他们非常出色”。  马斯克还称,没有看到与中国汽车制造商合作的明显机会,除非允许他们使用特斯拉超级充电网络或授权其自动驾驶技术。  IT...
            0 0 1110
            分享
          • http接口工具有很多如:postman、jmeter、soupUI、Java+httpclient、robotframework+httplibrary等1、什么是接口接口就是内部模块对模块,外部系统对其他服务提供的一种可调用或者连接的能力的标准接口的种类和分类:webservice和http api接口1)webservice接口是走soap协议通过http传输,请求报文和返回报文都是xm格式,可以通过jme、soapui工具进行测试;2)http api接口是走http协议通过路径来区分调用的方法,请求报文格式都是key-value形式,返回报文一般是json串,常见的请求方式有get、...
            1 1 1689
            分享
          • 第一阶段:API自动化之前的想法是:通过API创建数据,访问数据,进行数据操作,存储数据库,通过模拟前端的操作来想象API的访问流程。然后,验证数据库是否存储正确。后来发现该想法流程就是错误的。问题:1、模拟前端的操作需要对每个前端操作后调用的API非常熟悉,这已经超过了测试的范围,属于开发的范畴。2、每个API的集成测试应该是独立的,有顺序的对API的测试使得API之间存在相互依赖的关系。然而每个API的正确性并不能保证。3、API本身是具有很强的独立性,不应该通过前端模拟操作来对其进行相对的验证,操作逻辑应该由前端负责。总结:1、使得API具有健壮性,对正常的数据传输和异常的数据传输,服务...
            9 9 1723
            分享
          •   在PC上调试HTML页面时,经常用到firefox上的firebug和chrome上的DevTools,这两个工具帮助开发和测试在debug问题上提供了很大的便利。在当下移动互联网热的时代,无线端的HTML5的产品越来越多,面对纷繁复杂的浏览器环境(搜狗浏览器,chrome,手机自带,app等等),经常遇到一些诡异的问题,在定位问题时令开发和测试束手无策。那么在移动端,是否也有这样好用的工具呢?接下来为各位简要介绍两个好用的工具。  在介绍之前,先简要说明一下,当前无线开发同学调试无线页面的过程。目前常用的方法是在chrome上设置移动UA,模拟移动设备。这种方式的好处是显而易见的,在PC...
            0 0 2458
            分享
      • 51testing软件测试圈微信