Odoo中的Javascript单元测试】的更多相关文章

前端页面利用QUnit进行单元测试,本文参考官方文档:https://www.odoo.com/documentation/8.0/reference/javascript.html 访问/web/tests页面可以看到当前所有包含测试模块的单元测试列表. 自定义单元测试方法如下: 1. __openerp__文件中添加对js文件的引用: (非官方文档中将js文件写到'test'中,而是引用view文件,在view文件中添加对js的引用,8.0以后有效) <template id="ass…
-----------更新日期15:17 2016-02-16 星期二-----------* 用到的js库   我们可以打开 addons/web/views/webclient_template.xml   看到如下:        <template id="web.assets_common">            <script type="text/javascript" src="/web/static/lib/es5-s…
关于单元测试的想法 对于一些比较重要的项目,每次更新代码之后总是要自己测好久,担心一旦上线出了问题影响的服务太多,此时就希望能有一个比较规范的测试流程.在github上看到牛逼的javascript开源项目,也都是有测试代码的,看来业界大牛们都比较注重单元测试这块. 就我自己的理解而言: 涉及到大量业务逻辑的代码,可能我没有精力去给每个函数都写上单元测试的代码,功能细节的测试应该交由测试的同事去完成,但是对会直接影响项目正常运行的重要的数据接口,还是可以看情况写上几个单元测试用例的,每一次修改之…
之前没感觉要学啥单元测试,项目中测试都是手动测的,但也没觉的啥,但最近看文章和招聘上也多多少少有这方面的需求,于是网上搜索了一下,只找到了一些文章,但介绍的都不是很详细或者说比较复杂,满满的伤,虽然看懂一部分,但还是不知道有啥用,于是不了了之了. 但是就在今天又在某本书上讲啥测试,实在坐不住了,于是下定决心,一定得搞定到底什么是单元测试,在实际项目中又是如何使用的,于是就有了此文章. 茫茫人海只为找到你...... 搜索:Javascript单元测试入门.javascript单元测试教程.jav…
JavaScript单元测试框架JsUnit基本介绍和使用 XUnit framework XUnit是一套标准化的独立于语言的概念和结构集合,用于编写和运行单元测试(Unit tests). 每一个语言都有一个用于单元测试的XUnit框架,比如Java有JUnit, C++有CppUnit, PHP有PHPUnit, Oracle SQL有UTPL/SQL. JsUnit JsUnit的官网: http://jsunit.net/ JsUnit遵循XUnit的一些惯例: 单元测试在JsUnit…
Jasmine的开发团队来自PivotalLabs,他们一开始开发的JavaScript测试框架是JsUnit,来源于著名的JAVA测试框架JUnit.JsUnit是xUnit的JavaScript实现.但是JsUnit在2009年后就已经停止维护了,他们推出了一个新的BDD框架Jasmine.Jasmine不依赖于任何框架,所以适用于所有的Javascript代码. 所谓BDD(行为驱动开发,Behaviour Driven Development),是一种新的敏捷开发方法.Dan North…
1.      什么是单元测试 在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单个程序.函数.过程等:对于面向对象编程,最小单元就是方法,包括基类(超类).抽象类.或者派生类(子类)中的方法. 每个理想的测试案例独立于其它案例:为测试时隔离模块,经常使用stubs.mock 或fake等测试马甲程序.单元测试通常由软件开发人员编写,用于确保他们所写的代码符合软件需求和遵循开发目…
Javascript单元测试框架比较Qunit VS Jasmine 工欲行其事必先利其器,好的单元测试框架是TDD成功的一半.Javascript优秀的测试框架很多, 包括Jasmine,Qunit,JsTestDriver,JSUnit,Mocha等,当然你也可以写自己的单元测试框架,本文主角是Jasmine和Qunit.我之前一直用Qunit来做单元测试,Qunit在中国占有率是非常高的,我也不例外,而美国同事们已经用到Jasmine了,为了做一个更好的选型,决定对这两个框架做了一个小小的…
作者:Philip Walton 译者:Yeaseon 原文链接:点此查看 译文仅供个人学习,不用于任何形式商业目的,转载请注明原作者.文章来源.翻译作者及链接,版权归原文作者所有. ___ 我们都知道在多个浏览器中测试我们的代码是多么的重要.至少在我们发布第一个项目的时候,我认为我们在网络开发社区做大部分工作还是相当不错的. 我们做的不够好的工作是测试代码时每一次做出的改变. 我个人对此感到很惭愧.我已经把"学习如何构建自动化.跨浏览器的JavaScript的单元测试"列在我的年度t…
1.      什么是单元测试 在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单个程序.函数.过程等:对于面向对象编程,最小单元就是方法,包括基类(超类).抽象类.或者派生类(子类)中的方法. 每个理想的测试案例独立于其它案例:为测试时隔离模块,经常使用stubs.mock 或fake等测试马甲程序.单元测试通常由软件开发人员编写,用于确保他们所写的代码符合软件需求和遵循开发目…
章节目录 关于单元测试的想法 mocha单元测试框架简介 安装mocha 一个简单的例子 mocha支持的断言模块 同步代码测试 异步代码测试 promise代码测试 不建议使用箭头函数 钩子函数 钩子函数的描述参数 异步的钩子函数 全局钩子 延迟启动测试 测试用例TODO 仅执行一个用例集/用例 跳过哪些用例集/用例 重新执行用例 动态生成用例 测试时间 测试超时 用例集执行超时 用例执行超时 钩子函数超时 diff差异比较功能 mocha使用命令和参数 mocha init 初始化浏览器中测…
Karma+Jasmine+PhantomJS组合的前端javascript单元测试工具. 1.介绍 Karma是由Google团队开发的一套前端测试运行框架,karma会启动一个web服务器,将js源代码和测试脚本放到PhantomJS或者Chrome上执行. 2.安装 包管理package.json npm init 一路回车下去即可 - 在项目中安装karma包 npm i karma --save-dev karma初始化 karma init E:\javascript\auto-te…
在odoo中,通过iframe嵌入 html,页面数据则通过controllers获取,使用jinja2模板传值渲染 html页面分页内容,这里写了判断逻辑 <!-- 分页 --><ul id="ty_paging"> <li class="home" id="home"><a href="/car/budget/report/1"></a>首页</li>…
参考 可参考官网例子https://doc.odoo.com/trunk/web/qweb/或 http://thierry-godin.developpez.com/openerp/tutorial-module-creation-pos-modification-english-version/ 1 Qweb官方定义 Qweb被用作OpenERP的Web客户端模板引擎.它是一种基于XML的模板语言,同Genshi, Thymeleaf.Facelets模板具有相似并且具有以下特性: 完全在客…
注: 本博文是阅读Ruter博客 在odoo中添加自定义页面 后所做的个人总结,以及博文搬迁,主要是便于自己的后期理解:大部分内容为搬运,当然也包括自己的一些总结和流程优化. 前言 首先展示效果:进入odoo模块后,点击一个菜单,会出现一个自定义界面: 要完成自定义页面,需要以下几步: 0.引入相关js库: 1.编写注册xml页面: 2.在js中将动作和xml页面,js事件关联,并进行动作的注册: 3.引入js资源,完成在odoo中正式注册动作: 4.通过菜单调用动作打开页面: 以下是我的模块结…
html中使用JavaScript 1.延迟脚本 script标签定义了defer属性,脚本会被延迟到整个页面都解析完毕后运行 详细内容如下: 2.异步脚本 script标签定义了async属性,async适用于外部脚本文件,告诉浏览器立即下载文件,标记async脚本并不保存按照指定顺序执行 详细内容如下:…
script属性<script async = async charset="utf-8" defer="defer" src="index.html" type="text/javascript"></script>async:可选,表示立即下载下载脚本,但是不妨碍页面中的其他操作,只对外部脚本文件有效,不保证按照指定它们的先后顺序执行charset:可选,表示通过src属性指定的代码的字符集,大多数…
像HTML页面中插入JavaScrip的主要方法,就是使用<script>元素.HTML4.01为<script>定义了6个属性:async:可选,表示应该立即下载脚本,当不妨碍页面中的其他操作:charset:可选,表示通过src属性指定的代码的字符集:defer:可选,表示脚本可以延迟到文档完全解析和显示之后再执行:language:已废弃,原来用于表示编写代码使用的脚本语言.src:表示要执行代码的外部文件.type:可选,可以看成是language的替代书信,表示编写代码使…
2.1 <script>元素 向html页面中插入javascript的主要方法,就是使用<script>元素.这个元素被加入到正式的html规范中.html4.01为<script>定义了下列6个属性: 1:async:可选.表示应该立即下载脚本,但不妨碍页面中的其它操作,比如下载其他资源或等待加载其它脚本.只对外部脚本文件有效. 2:charset:可选.表示通过src属性指定的代码的字符集.由于大多数浏览器会会忽略它的值,因此这个属性很少有人用.   3:defe…
1.使用<script>元素向HTML页面中插入Javascript HTML4.01中<script>标签有6个属性: (1)async:可选.表示立即下载脚本,不影响页面中其他资源的下载.只对外部脚本文件有效. (2)charset:可选.表示通过scr属性指定的代码的字符集.(因为大多数浏览器会忽略它,所以很少人用) (3)defer:可选.表示脚本会延迟到文档完全被解析和显示之后在执行.只对外部脚本有效.IE7及更早的嵌入式脚本也支持该属性. (4)language:已废弃…
本文作者Nate Cook是一位独立的Web及移动应用开发者,是继Mattt大神之后NSHipster的主要维护者,也是非常知名活跃的Swift博主,并且还是支持自动生成Swift在线文档的SwiftDoc.org网站创造者.在本文中,他介绍了在Swift中使用JavaScript的方法和技巧,对于iOS和Web应用工程师有着非常实用的价值,以下为译文: 在RedMonk发布的2015年1月编程语言排行榜中,Swift采纳率排名迅速飙升,从刚刚面世时的68位跃至22位,Objective-C仍然…
js002-在HTML中使用JavaScript 2.1            <script>元素   定义了以下6个属性   async: 可选.表示应该立即下载脚本,但不妨碍页面中的其他操作,比如下载其他资源或者等待加载其他脚本.只对外部脚本文件有效.(异步的) charset:可选.表示通过src属性指定的代码的字符集. defer:可选.表示脚本可以延迟到文档完全被解析和显示之后再执行,只对外部脚本有效.IE7及其更早的版本也支持这个属性.(延迟,延期) src:可选.表示包含要执行…
<script>元素 向HTML页面中插入Javascript的主要方法,就是使用<script>元素,<script>元素有六个属性: async:可选.表示应该立即下载脚本,但不妨碍页面的其他操作,比如下载其他资源或等待加载其他脚本,只针对外部脚本有效. defer:可选.表示脚本可以延迟到文档完全被解析和显示之后再执行.只针对外部脚本有效. src:可选.表示包含要执行代码的外部文件. type:可选.表示编写代码使用的脚本语言内容类型.默认为text/javas…
1.1 <script>元素 向HTML页面中插入JavaScript的主要方法,就是使用<script>元素,<script>元素定义了一下6个元素: (1). async:可选,表示立即下载脚本,只对外部脚本文件有效 (2). charset:可选,表示通过src属性指定的代码的字符集 (3). defer:可选,表示脚本可以延迟到文档完全被解析和显示之后再执行,只对外部脚本文件有效 (4). language:已废弃,原来用于表示编写代码使用的脚本语言 (5).…
Js实现: 1.JavaScript实现的组成: 核心(ECMAScript):由ECMA-262定义,提供核心语言功能 文档对象模型(DOM)提供访问和操作网页内容的方法以及接口 浏览器对象模型(BOM):提供与浏览器交互的方法以及接口 在HTML中使用JavaScript 1.<script>元素: <async>:可选的,表示应该立即下载脚本,但不应该妨碍页面中的其他操作,比如下载其他资源.但这只对外部脚本有效 <charset>:可选.表示通过src属性指定的代…
一.使用 <script> 元素的方式有两种:直接在页面中嵌入 JavaScript 代码和引用外部 JavaScript 文件. 二.使用内嵌方式,一般写法为: <script type="text/javascript"> /*  code   */ </script> 三.引用外部 JavaScript 文件的一般写法为: <script type="text/javascript" src=""&…
JSON:JavaScript 对象表示法(JavaScript Object Notation) 和xml相似,都是文本形式(保存在文本文件中或字符串等形式),比如: jsstr = {"系别":"历史系","班级":"一班", "学员":[ {"姓名":"张三","年龄":25,"性别":"男"}, {&…
作为在SharePoint应用程序中使用JavaScript的第一步,就是要知道如何将一个写好的.js文件,引用到页面上.嗯,你可能觉得这个话题太简单了,"引用一个.js文件不就是在页面上方加一个<script>标签吗?"但是我们要考虑的事情,可通常要比这复杂得多.比如,我们大部分的.js文件,可能都是需要放置在网站中的所有页面上的,修改网站里面的每一个.aspx显然不是好主意,我们需要一个更好.更灵活的方案. 1.直接在母版页上引用.js文件 由于SharePoint网站…
客户端javascript涵盖在本系列的第二部分第10章,主要讲解javascript是如何在web浏览器中实现的,这些章节介绍了大量的脚本宿主对象,这些对象可以表示浏览器窗口.文档树的内容.这些章节同样涵盖重要的web应用所需要的网络编程API.本地存储和检索数据.画图等.主要包含内容有以下章节: web浏览器中的javascript / window对象 /  脚本化文档 /  脚本化css / 事件处理 / 校本化http / jQuery类库 / 客户端存储  /  多媒体和图形编程 /…
混合应用中的javascript实践 混合应用(hybird app) 在几年前便进入大众视野,近来更是越发风生水起,深受人民群众的喜爱. 目录 概念 什么是混合应用 混合方式 交互 方法注入 参数传递 方法监听 资源加载 调试 其他 兼容性 特性启用 局部视图 概念 什么是混合应用 混合应用(hybird app) 顾名思义,便是将web app与native app混合在一起,既享受html快速开发.快速版本迭代带来的便利,也能使用原生app调用系统接口和第三方SDK的强大扩展能力. 混合方…