2KB项目,专业的源码交易网站 帮助 收藏 每日签到

测试移动解决方案的 API 后端

  • 时间:2019-01-23 18:44 编辑:2KB 来源:2KB.COM 阅读:689
  • 扫一扫,手机访问
  • 分享
摘要: 英文原文:Tes
英文原文:Testing the API Backend of your Mobile Solution

Testing the API Backend

如果你正在开发一个移动的应用,非常高的可能性这个应用是需要跟后端的 Web API 进行交互的,这个 API 可能是你们团队自己开发的,或者是第三方提供的。毫无疑问,在过去的这两三年里,API 已经成为企业和应用的催化剂,通过 API 可瞬间让设备和平台更具灵活性。

在这片文章中,我们将谈谈关于 API 的质量以及如何通过 SmartBear 工具来确保 API 的质量。

背景

一个移动应用(原生,混合或者网页),通过标准协议与其后端API交互,大多数基于HTTP和REST协议,使用JSON或者XML格式的数据。这些API可能是你们自己的或者来自于任何一个第三方(比如说Twitter或者Google Maps),可以直接从你的应用中调用或者通过你们的API后端间接调用:indirect API integration

间接集成有如下几个优势:

  • 你的API后端选择返回给手机客户端的数据,减少宽带需求。
  • 你可以更改第三方API,而不需更新手机应用
  • 你可以在第三方API集中处理和隐藏错误和异常
  • 你可以在不影响客户的情况下,你可以换掉第三方API提供者(当然新的API提供者要提供一样的功能)
  • 你可以再API后端处理身份认证及API密钥--向客户隐藏逻辑

直接集成有如下优势:

  • 第三方提供者的响应不需要通过中介,可以减少延迟
  • 可能使用对许多第三方API提供者开放的用户库
  • 更容易使用身份认证登入机制

你还可以扩展更多优劣势——最终根据你的需求和资源归纳。

API后端自身既可以为Node.js或者Grails应用服务,也可以用于基于J2EE或.NET的面向服务的应用。底层数据有可以用关系型数据库操作,可以用NoSQL存储,也可以带有REST API。后端程序可以运行在本地服务器,也可以上传到虚拟云服务中。

无论你选择怎样的解决方案,你都需要解决API的测试和性能问题。现在让我们具体说说。

如何对 API 进行代码质量测试

我们都知道代码的质量是整个项目开始时就要非常注意的一个方面。需求需要进行评审、UI 模型需要进行测试、积压的问题需要优先处理、架构需要被评估等等。

如果你使用敏捷开发,你将在你的整个应用生命周期中进行不断的迭代。如果你使用瀑布流模型,那么前期你需要做更多的工作。不管是什么方式,你的 API 设计都应该得到绝对的重视,包括技术选择、数据格式、安全、认证和管理等等。

单元测试和代码评审是在实际编码阶段中比较常用的质量手段。但你必须确保你把各个部分组合起来以正确的方式来测试 API。你可以看到 API 的测试是作为你的类、对象、脚本、数据存储的集成测试。

1.功能测试
最初,API测试将专注于功能测试,确保预期和非预期输入结果正确您可以使用一个关键字驱动的测试方法使测试者可以在更高层次上定义测试范例来进行测试另外,可以使用数据驱动的测试测试大的输入和期望的输出数据

2.性能测试

性能测试是必须的,以此来保证你设计的API在高并发下的响应能力,只有保证了性能,才可以使得你的API有较好的多用户承载能力。在测试的时候你可以对你的API有个预期承受能力估值

3.安全测试

安全测试是额外重要的.APIs常常可以直接访问核心数据与那些组成你商业核心价值的逻辑.你必须确保你的APIs可以避免一般的攻击,比如SQL注入,错误的数据输入,越界.

确认当系统遇到环境错误或者输入错误时不会向那些潜在的恶意的人员发送详细的系统信息,以防止被用来控制系统.对于性能测试.重新用"功能测试去"测试"安全测试"(即功能安全测试)是有好处的.它可以在你进行功能测试的时候扫描你的安全缺陷(比如在你的客户端验证完你的APIs后进行SQL漏洞扫描).

所有的这些测试(功能,性能,安全)需要被创建的尽可能的早,不断的运行你那些还在发展与不断成熟的APIs.包括你自己的单一独立的测试执行单元.(我也不太懂这句,,,,-_-!!再查查)

确保每周回来看看,了解第三方APIs如何复杂化了你对质量保证的努力,而且可以帮助你监控你部署后的APIs....

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部