代码级接口测试与单元测试的区别

这篇具有很好参考价值的文章主要介绍了代码级接口测试与单元测试的区别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于接口测试

接口测试是一个比较宽泛的概念, 近几年在国内受到很多企业和测试从业者的追捧, 尤其是上层的UI在取悦用户的过程中迭代更新加快, UI自动化维护成本急剧上升的时代, 大家便转向了绕过前端的接口层面进行测试. 但是很多人, 对接口测试的理解并不完整, 事实上, 我们无论通过何种方式运行一段程序, 都必须调用该程序的接口才能实现.

比如, 我们通过登录页面输入账号和密码, 点击 登陆按钮, 最终该操作会被封装成一个HTTP请求, 发送给后台服务器, 后台服务器会直播调用登录接口, 来运行登陆的实际代码.

代码级接口测试与单元测试的区别,单元测试,软件测试,程序员,接口测试,自动化测试,测试工程师 

在这个过程, 点击"登录"按钮是一个前端界面, 如果通过该方法来观察其运行状态, 那么我们就称之为界面级的黑盒测试, 俗称"点点点". 我们也可以利用各种工具, 比如Fiddler, Postman, SoupUI, 甚至使用代码发送数据给后台服务器, 进而观察其运行结果的, 这些, 我们称之为协议级的接口测试. 这部分是大家经常提级的接口测试, 我就不再继续赘述了.

​现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:485187702【暗号:csdn11】

代码级接口测试与单元测试的区别,单元测试,软件测试,程序员,接口测试,自动化测试,测试工程师

当然, 我们还可以从代码层面来直播调用该登录接口, 那么 此时就称之为代码级的接口测试.

比如, 以下是一个简易的在线的计算器的源代码:

class Cal:
    def add(self, a, b):
        return a+b

    def minus(self, a, b):
        return a-b
    
    def mul(self, a, b):
        return a*b
    
    def div(self, a, b):
        return a/b

我们大概率是拿不到源代码的, 但是可以拿设计文档, 这几个方法所需要的参数, 以及类型都是可以拿到, 比如:

代码级接口测试与单元测试的区别,单元测试,软件测试,程序员,接口测试,自动化测试,测试工程师

由于我们只是调用接口, 只是接口的层次已经更接近底层代码了, 但是依然看不到代码, 所以, 我们依然需要使用用例的设计方法去设计我们的传入参数, 对div这个方法进行演示:

  • 整数相除
  • 小数相除
  • 除数为0
  • 输入字符串
  • 输入特殊字符
  • 超长的数字
  • 被除数为空
  • 除数为空
  • .........

以上, 有没有发现, 像极了使用等价类对页面的输入框进入用例设计. 是的, 没错.

因此, 我们就可以直接调用这些方法, 使用设计好的数据对它进行测试. 以下是使用unittest框架对它进行的测试, 写两条除法的测试用例供演示使用:

import unittest

class TestCal(unittest.TestCase):
    def test_div01(self):
        cal = Cal()
        result = cal.div(15,3)
        self.assertEqual(result, 5)

    def test_div02(self):
        cal = Cal()
        result = cal.div(15,0)
        self.assertIn('分母不能为0',result)

if __name__ == '__main__':
    unittest.main()

以下是测试结果:

代码级接口测试与单元测试的区别,单元测试,软件测试,程序员,接口测试,自动化测试,测试工程师

 

最后, 我们还可以深入到代码实现层, 对代码的实现逻辑进行详细的测试, 常用的方法有

  1. 语句覆盖
  2. 判定覆盖
  3. 条件覆盖

我们又称之为白盒测试单元测试

看到了吧, 这三种测试方法:

  1. 黑盒测试(从UI去)
  2. 协议级的接口测试(发送HTTP请求)
  3. 代码级的接口测试

以上方法的测试, 整个过程唯一的区别公在于我们调用该计算器的方式不一样, 最终真正工作的, 都是同样的一段代码, 这个本质是绝对不会因为被调用的方式不同而发生一丁点儿的变化. 所以, 任何一种调用的方式, 都在驱动程序运行而已, 本质上来说, 他们所做的事情没有任何区别.

因此, 正是因为接口测试的所谓接口, 是一个不太容易下定义的概念, 所以我们千万不能盲目地认为, 只有协议级的测试才是接口测试, 或者代码级的测试才是接口测试, 这些理解都太过绝对. 事实上, 通过页面上的操作, UI-User Interface, 用户界面, 直译用户接口, 这些页面的操作入口, 也是一个一个的接口啊. 所以, 请大家不要纠结于概念本身, 本文不是要去教大家如何抬杠, 而是明白, 我们的测试确实可以多样化, 可以更多地专注于从不同角度来完成对一个功能的测试, 进而达到更全面的测试覆盖, 尽早地找出Bug才是王道.文章来源地址https://www.toymoban.com/news/detail-757297.html

到了这里,关于代码级接口测试与单元测试的区别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 代码级接口测试与单元测试的区别

    接口测试是一个比较宽泛的概念, 近几年在国内受到很多企业和测试从业者的追捧, 尤其是上层的UI在取悦用户的过程中迭代更新加快, UI自动化维护成本急剧上升的时代, 大家便转向了绕过前端的接口层面进行测试. 但是很多人, 对接口测试的理解并不完整, 事实上, 我们无论通

    2024年02月04日
    浏览(26)
  • 软件测试之单元测试

    🍅 视频学习: 文末有免费的配套视频可观看 🍅  关注公众号【互联网杂货铺】,回复 1  ,免费获取软件测试全套资料,资料在手,涨薪更快 从产品角度而言,常规的功能测试、系统测试都是站在产品局部或全局功能进行测试,能够很好地与用户的需要相结合,但是缺乏

    2024年01月20日
    浏览(45)
  • 软件测试技术(单元测试)

    1、JUnit JUnit是一个Java语言的单元测试框架,用于编写和运行测试。它提供了一些注解和断言方法,可以使测试代码更加简洁和易于阅读。使用JUnit进行单元测试,可以提高代码的质量和可维护性,减少代码的错误和缺陷,从而提高整个系统的稳定性和可靠性。 JUnit框架的核心

    2024年02月04日
    浏览(51)
  • 软件测试系列--单元测试

     一、单元测试的概念 单元测试(Unit Testing)是对软件基本组成单元进行的测试,如函数(function或procedure)或一个类的方法(method)。当然这里的基本单元不仅仅指的是一个函数或者方法,有可能对应多个程序文件中的一组函数。 单元也具有一些基本的属性。比如:明确的

    2024年02月16日
    浏览(39)
  • 软件测试——单元测试

    单元测试是软件开发中的一种测试方法,用于验证软件中的各个独立单元(通常是函数、方法或类)是否按照设计规范正常工作。以下是进行单元测试的一般步骤和最佳实践: 1. 选择测试框架 选择适合项目的测试框架,例如: JUnit(Java) PyTest(Python) JUnit(JavaScript) PHP

    2024年02月03日
    浏览(47)
  • 【软件测试】单元测试

    单元测试 (Unit Testing),又称 单体测试 、 模块测试 ,是最小单位的测试,其依据是详细设计、程序源代码或编码标准,对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误,使代码达到设计要求。 单元测试是所有的测试活动中最早进行的,它能以最低的成

    2024年02月13日
    浏览(39)
  • 软件测试之单元测试详解

    目录 前言: 1、什么是单元测试? 2、什么是好的单元测试? 3、怎么写单元测试? 4、玩转单元测试 单元测试是软件测试中的一种测试方法,用于验证代码中最小可测试单元的正确性。它主要关注对程序的各个独立模块、函数或方法进行测试,以确保其按照预期产生正确的输

    2024年02月12日
    浏览(53)
  • 软件测试之【单元测试、系统测试、集成测试】

    目录 一、单元测试的概念 二、单元测试的目的 三、单元的常见错误 四、如何进行单元测试 五、单元测试策略 六、系统测试的概念 七、系统测试的环境 八、系统测试的类型 九、系统测试的过程 十、集成测试概念 十一、集成测试的目的 十二、集成测试关注的重点 十三、集

    2023年04月08日
    浏览(47)
  • 软件测试之单元测试、系统测试、集成测试详解

    🍅 视频学习: 文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 , 免费获取软件测试全套资料,资料在手,涨薪更快 单元测试是对软件基本组成单元进行的测试,如函数或一个类的方法。当然这里的基本单元不仅仅指的是一个函数或者方法,有可能

    2024年04月25日
    浏览(53)
  • 软件测试实验:Junit单元测试

    目录 前言 实验目的 实验内容 实验要求 实验过程 题目一 题目一测试结果 题目二 题目二实验结果 总结 软件测试是软件开发过程中不可缺少的一个环节,它可以保证软件的质量和功能,发现并修复软件的缺陷和错误。软件测试分为多种类型,其中一种是单元测试,即对软件

    2024年02月02日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包