發表文章

[Docker for Windows] ASP.NET Core 試玩

圖片
個人針對.netcore 執行在docker的一些小功能測試,例如:如何將發行的程式建置成image、連線到內部主機等..。 環境 Docker for Windows image: aspnetcore (Linux base) Step by Step 1.建立.netcore web application,在Contoller撰寫資料庫連線

Window Containers Hello SQL Express

圖片
最近公司的測試主機安裝成Window Server 2016,剛好可以來玩一下Window Containers功能。 安裝設定 Step by Step 啟用服務 以下指令皆為 Power Shell Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -all Enable-WindowsOptionalFeature -Online -FeatureName containers –all ps : 執行後須重開機 下載Docker $version = (Invoke-WebRequest -UseBasicParsing https://raw.githubusercontent.com/docker/docker/master/VERSION).Content.Trim() Invoke-WebRequest "https://master.dockerproject.org/windows/amd64/docker-$($version).zip" -OutFile "$env:TEMP\docker.zip" -UseBasicParsing 安裝Docker Expand-Archive -Path "$env:TEMP\docker.zip" -DestinationPath $env:ProgramFiles 註冊為Service $env:path +=";c:\program files\Docker" [Environment]::SetEnvironmentVariable("Path",$env:Path+"C:\Program Files\Docker",[EnvironmentVariableTarget]::Machine) dockerd --register-service Start-Service Docker 到此步驟已完成安裝。 SQL Server 2016 Express 版的 Windows 容器 安裝完後,當然是要找個容器來執行看看。 下載I...

Jenkins 解決Protractor螢幕太小

圖片
  在Jeinkins 透過command or PowerShell執行Protractor測試時,預設會在JVM的背景執行,螢幕大小只有1024*768。這導致測試會遇到點不到element的錯誤。之前的解決方法,是Jenkins透過另一程式來執行,但這樣的方式在Jenkins會無法得知測試狀況及結果。 解決方式 參考StackoverFlow的討論後,試了幾個方法...最後測試是可以透過新增slave來達到desktop互動,這樣在測試時,就會即時看到測試畫面,且螢幕大小是以你目前的顯示為主。 1.新增slave

Jenkins-Plugin 部署應用程式到網路目錄

圖片
   目前的測試主機上會執行一些Window應用程式,由於是跟Jenkins主機同一台,所以發行應用程式的工作,只要在建置後,執行xcopy即可以完成。 問題   由於測試主機的工作量增加,所以決定將Jenkins移至另一台主機。而移機事小,但原本的佈署工作就會有些問題需要解決,例如在Jenkins 無法使用xcopy 到網路目錄,會得到錯誤 Invalid drive specification

.netcore TypeScript Setup

設定檔tsconfig.json 預設在Vs2015 加入.ts檔案,就會自動在每次儲存時complier,輸出js檔,若要進階設定,.netCore的專案需在根目錄加入組態檔tsconfig.json。參考如下: tsconfig.json { "compilerOptions": { "noImplicitAny": true, "noEmitOnError": true, "sourceMap": true, "target": "es5", "module": "commonjs" }, "exclude": [ "node_modules", "wwwroot/lib", "bin", "obj" ], "compileOnSave": true } 上方的exclude,會排除目錄內的.ts。 若不使用exclude,只想針對特定檔案的話,可以使用 files 參數,此參數要明確指定檔名,例: files:[‘./wwwroot/js/app.ts’]

Protractor Chrome v53後的錯誤修正

   更新到Chrome 53後,原本可以正常執行測試的的Protractor出現了些bug... 無法使用鍵盤的Tab鍵。 無法執行測試,錯誤訊息"Error  Runtime.executionContextCreated has invalid 'context'"   解決方式 在github Issue 找到的解答是將selenium chrome driver 更新到2.24,不過要透過指定版本的方式,才可以更析,個人更新步驟如下: 開啟工作管理員,先將殘留chrome.exe停掉,否則無法更新driver 重新安裝 Protractor (非必要步驟,只是我因更新driver後,也無法執行測試,所以用重新安裝的方式就可以了) npm uninstall protractor -g npm install protractor –g 更新driver webdriver-manager update --standalone true --versions.chrome 2.24   參考來源 https://github.com/angular/protractor/issues/3530 https://github.com/angular/webdriver-manager/issues/93

[Google Analytics] 資料收集與報表設定

圖片
  關於Google Analytics的介紹,網路上有很多文章,這裡就不多作介紹,本文為個人最近在Survey時,針對需要的功能及其相關API 的拉拉雜雜記錄。 ps:使用的是新版的Library analytics.js 舊版為ga.js 增強型電子商務 針對ec基本步驟的資料收集,例: 產品檢視 加入購物車 進入結帳 完成購買 1.啟用設定

[Memo] 使用Fiddler 發Request

圖片
測試一個功能是要從臺灣銀行下載匯率檔。從網頁可以直接click後下載檔案。 但若寫程式(WebClient)下載則會得到URL錯誤的html內容

[.NET Core] IIS 設定環境變數

圖片
   .NET Core Web專案在部署時,可以依據不同的環境變數切換不同的組態設定,例:appsettings.{env.EnvironmentName}.json。本文介紹針對部署至IIS後,如何在IIS上設定環境變數,來達到各階段的Site區分 例:QAS、Staggin、Production Step by Step 1.在目標Site上打開Configuration Editor

[.NET Core] Render Razor View to string in .NET Core

圖片
    之前在MVC5常用的Function,從Controller Render 某一個Partial View的Html來使用。在MVC6本想說將舊程式copy回來就可以用了,但事實上方法簽章不太一樣,所以需作些調整。 原程式-MVC 5 新程式-MVC 6 差異說明: ICompositeViewEngine,在建構式須先注入。 取得預設的Action改由ActionDesciptor取得 沒有FindPartialView,改成FindView,最後一個參數boolean決定Full View or Partial View 使用非同步Render