AngularJS 簡單 單元測試 之 環境配置
一.工具及環境選擇
OS: Win 7 64bit
IDE: WebStorm 8
angular版本:1.2.2
測試環境:karma + jasmine
二. 實現步驟:
本人用的是64位的安裝包
安裝步驟相對簡單, 直接一直按下一步就可以了。
2. 在nodejs上安裝 karma & jasmine
在【開始】中我們可以在Node.js 的目錄下找到 Node.js command prompt
開啟command prompt
輸入指令, 完成 karma 和 jasmine的安裝:
npm install karma --save-dev
npm install karma-jasmine --save-dev
npm install karma-cli --save-dev
launcher的選擇: 一般使用Chrome的話, 每執行一次都會彈出Chome視窗,很是繁瑣。
所以在這裡我們launcher使用PhantomJS。
PhantomJS的安裝:
npm install phantomjs --save-dev
npm install karma-phantomjs-launcher --save-dev
完成上述步驟後, 我們可以在 -- C:\Users\ 當前使用者名稱\ node_modules -- 的目錄下找到我們安裝的東西。
三. 在WebStorm好相關配置
1. 找到karma目錄下找到 config.tpl.js, 將其複製到WebStorm相關專案中
將config.tpl.js的內容修改如下
// Karma configuration // Generated on %DATE% module.exports = function(config) { config.set({ // base path that will be used to resolve all patterns (eg. files, exclude) // frameworks to use // available frameworks: https://npmjs.org/browse/keyword/karma-adapter frameworks: ['jasmine'], // list of files / patterns to load in the browser files: [ 'angular/js/angular.js', 'angular/js/angular-mocks.js', 'module/ctrl.js', 'test/test.js' ], // list of files to exclude exclude: [ ], // preprocess matching files before serving them to the browser // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor // test results reporter to use // possible values: 'dots', 'progress' // available reporters: https://npmjs.org/browse/keyword/karma-reporter reporters: ['progress'], // web server port port: 9876, // enable / disable colors in the output (reporters and logs) colors: true, // level of logging // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG logLevel: config.LOG_INFO, // logLevel: config.LOG_DEBUG, // enable / disable watching file and executing tests whenever any file changes autoWatch: true, // start these browsers // available browser launchers: https://npmjs.org/browse/keyword/karma-launcher browsers: ['PhantomJS'], //PhantomJS, Chrome plugins:[ 'karma-jasmine', 'karma-phantomjs-launcher'], // Continuous Integration mode // if true, Karma captures browsers, runs the tests and exits singleRun: false }); };
config.tpl.js簡單說明:
frameworks: 要整合的框架。
files: 執行測試時所要涵蓋的js檔案。
browsers: 測試所用的瀏覽器。
plugins:相關外掛的引用。
ps.1: 測試angular時要包含angular-mocks.js, 如果沒有會報錯誤。
2. 選中 Run -> Edit Configurations
點選新增, 選擇Node.js, 之後對新增的configuration進行配置, 之後選擇apply儲存。
配置完成之後我們就可以在此引用了。
四: 測試例項
我在module和test目錄下分別建立了ctrl.js 和 test.js
<pre name="code" class="javascript">/**
* ctrl.js
* Created by businiao on 2014/7/11.
*/
var myApp = angular.module('myApp',[]);
myApp.filter('reverse',function(){
return function(text){
return text.split('').reverse().join('');
}
})
</pre><pre name="code" class="javascript">/**
* test.js
* Created by businiao on 2014/7/11.
*/
describe('group1', function(){
beforeEach(module('myApp'));
describe('reverse', function(){
it('should reverse a string', inject(function(reverseFilter){
expect(reverseFilter('ABCD')).toEqual('DCBA');
expect(reverseFilter('John')).toEqual('nhoJ');
}))
})
})
執行測試結果:
如果有同學報了 angular-mocks.js read-only錯誤的話, 請參考下述文章修改angular-mocks.js。
WebStorm 使用小技巧 -- 函式補全功能:
在Settings中, 我們可以在JavaScript下的Libraries去下載我們所需要的庫以滿足我們的補全需求。
本人也是初學, 有不足之處請大家提出, 謝謝。
相關推薦
AngularJS 簡單 單元測試 之 環境配置
一.工具及環境選擇 OS: Win 7 64bit IDE: WebStorm 8 angular版本:1.2.2 測試環境:karma + jasmine 二. 實現步驟: 本人用的是64位的安裝包 安裝步驟相對
Java學習之路0714(一)(markDown標籤的簡單使用,Java環境配置、Java基本資料型別))
1、markdown標籤的簡單使用 #的使用 *的使用 >的使用 =的使用 -的使用 圖片的新增 標題#的使用,#表示一級標題,##表示是二級標題,標題內容寫在#後面 這是一級標題 這是二級標題 這是三級標題
安卓開發之最簡單詳細的開發環境配置
一、jdk環境配置 (如果已經配置了就跳過這一步) (記得勾選accept) 根據系統版本選擇下載並安裝,一路next。 然後配置環境變數 JAVA_HOME 二、下載adt bundle adt整合包已經在eclipse配置好了adt外掛,無需自己再
單元測試之Stub和Mock
下載 我們 並且 試用 sample 註入 mes oge new 單元測試之Stub和Mock FROM:http://www.cnblogs.com/TankXiao/archive/2012/03/06/2366073.html 在做單元測試的時候,我們會發現我
UI 自動化測試1-環境配置
在哪裏 表示 配置環境 我們 環境變量 sta 正常 通過 mage 一.安裝Eclipse:1. 安裝Eclipse2. 打開Eclipse(這個時候你會發現無法打開會提示….) 原來是我們沒有裝JDK和JRE (肯定有人又疑惑了,jdk和jre是什麽有
玩轉Android monkey之環境配置和ADB命令
手機app測試 monkey 小強測試品牌 測試幫日記 轉發是對小編的最大支持接著上篇文章繼續《玩轉Android monkey之monkey是啥?monkey=猴子?》配置SDKl 新建一個系統環境變量:ANDROID_HOMEl 對應的值為你sdk的安裝目錄l 編輯系統環境變量:PATHl
react學習筆記之環境配置
大量 bpa blog 第一個 clas 粉絲 安裝 nbsp pac 今天開始學習react環境配置,首先我們知道目前主流框架有三個,即:angular,react,vue,每個框架都有大量粉絲在用,並且每個框架都有自己的一套開發環境和提供的腳手架,今天我們學習一下
android studio入門之環境配置
版本 log 127.0.0.1 jar 連接 .exe 目錄 jre 文件 JDK環境搭建 添加環境變量:JAVA_HOME:->JDK安裝路徑 CLASSPATH:->.;%JAVA_HOM
python + unittest 做單元測試之學習筆記
stl unittest 例子 gin pre log script 有關 assert 單元測試在保證開發效率、可維護性和軟件質量等方面有很重要的地位,所謂的單元測試,就是對一個類,一個模塊或者一個函數進行正確性檢測的一種測試方式。 這裏主要是就應用 python + u
spring單元測試的基本配置
code unit ext bsp 配置 con ner extc contex @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath:trade.ap
論單元測試之重要性
表單 曾經 mybatis 服務 request 第一個 完成 分離 能說 單元測試的重要性不言而喻,自我開發生涯以來,從很少註釋過過場場,到非常重視。 單元測試為什麽會讓人忽視呢? 通常情況像一些查詢或者增刪改之類,拿我來說,即便報錯我大概一掃,我就知道錯誤是什麽了,該如
python筆記24-unittest單元測試之mock.patch
rom Coding int self. 錯誤 測試用例 方法 org auto 前言 上一篇python筆記23-unittest單元測試之mock對mock已經有初步的認識, 本篇繼續介紹mock裏面另一種實現方式,patch裝飾器的使用,patch() 作為函數裝飾器
壓測工具之JMeter之環境配置及運行
tar load col image 技術 down files inf apache 一、下載JMeter 地址:http://jmeter.apache.org/download_jmeter.cgi 系統:win7 x64 在 Binaries 目錄下選擇一個合適自己
補習系列-springboot 單元測試之道
try 精彩 一次 run rest spec ner hat ltm 目錄 目標 一、About 單元測試 二、About Junit 三、SpringBoot-單元測試 項目依賴 測試樣例 四、Mock測試 五、最後 目標 了解 單元測試的背景 了解如何 利用
最近一個項目需要使用vue,作為小白,記錄一下自己的學習歷程吧(項目之環境配置)
代理 切換 node tao 容易 分布式版本控制 sig 兩個文件 速度 一、環境準備 1.git 2.19.0(免費、開源的分布式版本控制系統) 下載地址:https://git-scm.com 查看git版本:安裝完成後,打開命令提示符輸入 git
用NI的數據采集卡實現簡單電子測試之3——繪制二極管V-I特性曲線圖
流程圖 實現 圖片 tro 參考 dac 反饋 流控 ron 本文從本人的163博客搬遷至此。 接下來用USB-6009和LabVIEW實現對二極管最重要的特性曲線“V-I特性曲線”的測試和繪制。 一、什麽是二極管V-I特性曲線 康華光版的《電子技術基礎
用NI的數據采集卡實現簡單電子測試之5——壓控振蕩器的測試
圖片 max 運算放大器 image 電容 改變 理論 usb 延時 本文從本人的163博客搬遷至此。 為了展示連續信號采集的方法,以其外部觸發采集功能。我用運算放大器實現了一個最簡單的低頻壓控振蕩器(VCO),作為USB-6009采集的信號源。在LabVIEW下編寫的應用
單元測試之Mock(Moq)
inter 商品 void 簡單 calc 不用 準備 targe ted Mock翻譯為“嘲弄”,其實就是偽造一個對象用於測試。在單元測試中,被測試方法依賴於其他對象時,為了測試簡單一般“偽造”一個這個對象;這樣做的目的: 不用考慮依賴對象的復雜性(方便準備測試數據)
java單元測試之如何實現非同步介面的測試案例
測試是軟體釋出的重要環節,單元測試在實際開發中是一種常用的測試方法,java單元測試主要用junit,最新是junit5,本人開發一般用junit4。因為單元測試能夠在軟體模組組合之前儘快發現問題,所以實際開發中投入產出比很高。實際使用難免會遇到非同步操作的介面測試,最常用的情景是別人家的SD
前端單元測試之Jest
概述 關於前端單元測試的好處自不必說,基礎的介紹和知識可以參考之前的部落格連結:React Native單元測試。在軟體的測試領域,測試主要分為:單元測試、整合測試和功能測試。 單元測試:在計算機程式設計中,單元測試(英語:Unit Testing)又稱為模組測試, 是針對程式模組(軟體設計的最小單