起航学习网

- 让每个人都能学到最前沿新知识、新技能!
起航学习网
当前位置: 起航学习网 > 人在职场 > JavaScript有这几种测试分类

JavaScript有这几种测试分类

时间:2021-05-02 15:39:58来源:深圳软件开发测试培训学校 作者:软件开发测试培训网 已有: 名学员访问该课程

前言: 也许你讨厌javascript:;" onClick="javascript:tagshow(event, '%B2%E2%CA%D4');" target="_self"测试,但是你不得不面对它,所以至少区分

也许你讨厌javascript:;" onClick="javascript:tagshow(event, '%B2%E2%CA%D4');" target="_self">测试,但是你不得不面对它,所以至少区分一下 单元测试、集成测试与功能测试?对吧…

JavaScript代码测试有很多分类,比如 单元测试(unit test) 、 集成测试(integration test) 、 功能测试(functional test) 、 端到端测试(end to end test) 、 回归测试(regression test) 、 浏览器测试(browser test)

也许你会傻傻地分不清楚,它们是什么?如何使用?什么情况下使用?这篇博客将解答你的疑问。

单元测试

单元测试指的是测试小的代码块,通常指的是独立测试 单个函数 。 如果某个测试依赖于一些外部资源,比如网络或者数据库,那它就不是单元测试 。

单元测试一般很容易写。一个单元测试通常是这样的:为某个函数提供某些输入值,然后验证函数的返回值是否正确。然而,如果你的代码设计非常糟糕,则单元  测试会很难写。从另一个角度理解,单元测试可以帮助我们写更好的代码。

从某种意义上,单元测试就是代码的骨干。通过单元测试,可以帮助你优化代码设计,可以保证修改代码时正确无误。

单元测试可以帮助我们避免一些常见的BUG。通常,程序员会在同一个细节上反复犯错,如果为这些BUG添加单元测试,则可以有效避免这种情况。当然,你也可以使用 集成测试 和 功能测试 来解决这个问题,但是单元测试更加适合,因为单元测试更加细致,可以帮助我们快速定位和解决问题。

什么时候应该做单元测试呢?采用 测试驱动开发(test driven development) 的话,你应该一直写单元测试。好的单元测试不仅可以 避免BUG ,还可以 优化代码 ,并且保证 修改或者重构代码时不会出错 。

流行的JavaScript单元测试工具有 Mocha , Jasmine 和 Tape 。

集成测试

集成测试就是测试应用中不同模块如何集成,如何一起工作,这和它的名字一致。集成测试与单元测试相似,但是它们也有很大的不同:单元测试是测试每个独立的模块,而集成测试恰好相反。比如, 当测试需要访问数据库的代码时,单元测试不会真的去访问数据库,而集成测试则会 。

单元测试不够时,这时就需要集成测试了。当你需要去验证两个独立的模块,比如数据库和应用,保证它们能够正确的一起工作,这时就需要集成测试了。为了验证测试结果,你就需要通过查询数据库验证数据正确性。

集成测试通常比单元测试慢,因为它更加复杂。并且,集成测试还需要配置测试环境,比如配置测试数据库或者其他依赖的组件。这就使得编写和维护集成测试更加困难,因此,你应该专注于单元测试,除非你真的需要集成测试。

你需要的集成测试应该少于单元测试。除非你需要测试多个模块,或者你的代码太复杂时,你才需要集成测试。并且,当你的代码过于复杂时,我建议优化代码以便进行单元测试,而不是直接写集成测试。

通常,我们可以使用单元测试工具编写集成测试。

功能测试

功能测试有时候也被称作端到端测试,或者浏览器测试,它们指的是同一件事。

功能测试指的是测试应用的某个完整的功能。 对于网页应用,功能测试意味着使用工具模拟浏览器,然后通过点击页面来测试应用。

单元测试可以测试单个函数,集成测试可以测试两个模块一起工作。功能测试则完全是另外一个层次。你可以有上百个单元测试,但是通常你只有少量的功能测试。这是因为功能测试太复杂了,难于编写和维护。功能测试很慢,因为它需要模拟真实用户进行网页交互。

事实上,你不需要编写非常详细的功能测试。功能测试并不意味着你需要测试每一个功能,其实,你只需要测试一些常见的用户行为。如果你需要在浏览器中手动测试应用的某个流程,比如注册账号,这时你可以编写一个功能测试。

对于单元测试,你会使用代码去验证结果,在功能测试中也应该这样做。以注册账号为例,你可以验证浏览器是否跳转到了”感谢注册”页面。

当有些测试你需要手动在浏览器下重复进行时,你应该编写功能测试。注意不要写得太细致了,否则维护这些测试将是一个噩梦。

最流行的功能测试工具是 Selenium 。 Selenium WebDriver 或者 Protractor 通常与Selenium一起使用,有时也使用 PhantomJS 和 CasperJS ,注意你不需要使用真实浏览器。

总结

测试JavaScript代码时,应该着重于单元测试,它非常容易编写和维护,除了可以减少BUG还有很多益处。而集成测试与功能测试应该作为补充。

软件开发测试人才四大魅力元素

——就业竞争小

——高薪没商量

——就业质量高

——无性别歧视

套用狄更斯那句话说:对于急需软件开发测试人员的企业来说,这是一个最坏的时代,但对软件开发测试人才来说,这是一个最好的时代。“随着软件市场的成熟,人们对软件作用的期望值也越来越高,软件的质量和功能可靠性也正逐渐成为人们关注的焦点。”

文章出自:http://www.epx365.cn/jyzn/202179336.html

文章标题:JavaScript有这几种测试分类



免责声明:本站文章均由入驻起航学习网的会员所发或者网络转载,所述观点仅代表作者本人,不代表起航学习网立场。如有侵权或者其他问题,请联系举报,必删。侵权投诉

(责任编辑:深圳学历教育网)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
培训学校
IT培训网 访问该机构站点 报名留言 加为好友 用户等级:注册会员 用户级别:10 机构名称:IT培训网 联 系 人:罗老师 联系电话:13783581536 联系手机:13783581536 在线客服:起航学习网客服 在 线 QQ:起航学习网客服 电子邮件: 网站域名:http://www.cnitedu.cn 注册时间:2016-07-18 11:07 最后登录:2021-05-02 14:05