首页 > 编程知识 正文

前端ui自动化测试,ui界面测试有哪些

时间:2023-05-05 22:11:24 阅读:244822 作者:2364

一、 单元测试

(1)断言assert

业界流行的断言库: Chai Assertion Library

既有行为驱动开发(Behavior-Driven Development)(简写BDD), 又有驱动测试开发(TDD)

(2)mocha单元测试框架

mocha是一款功能丰富的javascript单元测试框架,它既可以运行在nodejs环境中,也可以运行在浏览器环境中。

javascript是一门单线程语言,最显著的特点就是有很多异步执行。同步代码的测试比较简单,直接判断函数的返回值是否符合预期就行了,而异步的函数,就需要测试框架支持回调、promise或其他的方式来判断测试结果的正确性了。mocha可以良好的支持javascript异步的单元测试。

mocha会串行地执行我们编写的测试用例,可以在将未捕获异常指向对应用例的同时,保证输出灵活准确的测试结果报告。

(3)Istanbul(单元测试覆盖率)

计算测试覆盖率,它使用模块加载器挂钩计算语句、行、函数和分支覆盖,以便在运行测试时透明地添加覆盖。支持所有JS覆盖用例,包括单元测试、服务器端功能测试和浏览器测试。

二、持续集成(build passing)

(1)Travis CI

使用教程: https://www.cnblogs.com/morang/p/7228488.html

提供的是持续集成服务(Continuous Integration,简称 CI)。它绑定 Github 上面的项目,只要有新的代码,就会自动抓取。然后,提供一个运行环境,执行测试,完成构建,还能部署到服务器。

持续集成指的是只要代码有变更,就自动运行构建和测试,反馈运行结果。确保符合预期以后,再将新代码"集成"到主干。

持续集成的好处在于,每次代码的小幅变更,就能看到运行结果,从而不断累积小的变更,而不是在开发周期结束时,一下子合并一大块代码。

(2)集成测试覆盖率工具 codecov

Codecov是一个开源的测试结果展示平台,将测试结果可视化。Github上许多开源项目都使用了Codecov来展示单测结果。

Codecov跟Travis CI一样都支持Github账号登录,同样会同步Github中的项目。在nodejs环境下使用Codecov需要安装对于的npm包,运行下面这个命令进行安装:

三、 UI测试

(1)Jest

类似的库很多, 但是这个视最好用的

零配置测试平台

Jest 被 Facebook 用来测试包括 React 应用在内的所有 JavaScript 代码。Jest 的一个理念是提供一套完整集成的 “零配置” 测试体验。我们发现,当向开发人员提供了现成可用的工具后,他们会愿意写更多的测试,这也使得他们的代码库更加稳定和健康。

(2)Enzyme

是一个用于React的JavaScript测试实用程序,它使断言、操作和遍历React组件的输出更加容易。             

通过模仿jQuery的DOM操作和遍历API,Enzyme的API意味着直观和灵活。

(3)selenium-webdriver

Selenium是一个浏览器自动化库。 Selenium最常用于测试Web应用程序,可用于任何需要自动与浏览器交互的任务。

Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDriver 曾经是 Selenium 的竞争对手)。也就是说 Selenium 2 是 Selenium 和 WebDriver 两个项目的合并,即 Selenium 2 兼容 Selenium,它既支持 Selenium API 也支持 WebDriver API。 WebDriver是一个用来进行复杂重复的web自动化测试的工具。意在提供一种比Selenium1.0更简单易学,有利于维护的API。它没有和任何测试框架进行绑定,所以他可以很好的在单元测试和main方法中调用。一旦创建好一个Selenium工程,你马上会发现WebDriver和其他类库一样:它是完全独立的,你可以直接使用而不需要考虑其他配置,这个Selenium RC是截然相反的。

四、Benchmark.js分析代码性能

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。