[爆卦]前端自動化測試是什麼?優點缺點精華區懶人包

雖然這篇前端自動化測試鄉民發文沒有被收入到精華區:在前端自動化測試這個話題中,我們另外找到其它相關的精選爆讚文章

在 前端自動化測試產品中有28篇Facebook貼文,粉絲數超過0的網紅,也在其Facebook貼文中提到, #職缺分類優化 最近在做求職平台的職缺分類分析,我先依照自己對資訊、科技、製造產業的認知,做了以下的分類,想請問大家能否直覺的找到你的職務類別?有沒有遺落或覺得項目錯置的地方?歡迎用力鞭打😂 #軟體開發 -Java後端工程師 -Node.js工程師 -C# / .Net工程師 -PHP工程師 -...

  • 前端自動化測試 在 Facebook 的精選貼文

    2021-07-12 16:51:18
    有 17 人按讚

    #職缺分類優化

    最近在做求職平台的職缺分類分析,我先依照自己對資訊、科技、製造產業的認知,做了以下的分類,想請問大家能否直覺的找到你的職務類別?有沒有遺落或覺得項目錯置的地方?歡迎用力鞭打😂

    #軟體開發
    -Java後端工程師
    -Node.js工程師
    -C# / .Net工程師
    -PHP工程師
    -Python工程師
    -Javascript前端工程師
    -Android / IOS / Mobile App工程師
    -AI / 演算法 / 影像工程師
    -軟體測試工程師

    #資訊系統維運
    -MIS / DevOps / Infra
    -ERP系統相關
    -網路安全相關
    -資訊設備相關

    #市場開發
    -個人銷售業務
    -企業銷售業務
    -市場開發業務
    -通路開發業務
    -商品開發業務
    -國際貿易業務
    -客戶經理

    #客戶服務
    -門市客服
    -線上客服
    -售後客服
    -技術客服

    #營運核心
    -儲備幹部
    -產品經理
    -專案管理
    -採購/資材/物管
    -法務
    -特助、秘書
    -行政、總務

    #人力資源
    -人資專家/主管
    -招募/獵頭
    -教育訓練
    -績效評估
    -薪酬管理

    #設計相關
    -UI/UX
    -網頁/手機介面
    -平面/插畫
    -空間/景觀
    -服飾/織品
    -工業/傢俱
    -2D/3D動畫

    #行銷企劃
    -內容/社群
    -品牌/公關
    -廣告/數位
    -活動/策展
    -市場研究分析
    -市場營運/成長駭客

    #工程研發
    -自動化工程師
    -機械機構工程師
    -電子電機工程師
    -RF工程師
    -韌體工程師
    -電源工程師
    -測試工程師
    -設備工程師
    -製程工程師
    -工業工程師
    -化學/材料工程師

    #生產製造
    -品保/品管
    -生產管理
    -產線技術員
    -作業包裝員
    -廠務
    -環安衛

    #財會金融
    -財務/會計/出納
    -稽核/稅務
    -投資分析
    -交易員
    -理財專員
    -保險經紀

    #物流運輸
    -倉庫管裡
    -物流管理
    -外務司機

  • 前端自動化測試 在 矽谷牛的耕田筆記 Facebook 的最佳貼文

    2021-02-17 09:01:06
    有 24 人按讚

    不知道作為服務供應者的各位如果內部服務需要維護時,都會如何對外公告之後會有一個維護時間?

    今天這篇文章來自於 env0 這間產品的親身體用經驗,當今天產品不論是前端或是後端需要有一個維護時間去公告來告訴使用者,這個解決方案該如何有系統性地去設計與實作。

    作者希望該解決方案可以滿足
    1. 能夠透過 IaC 的架構來完成,因為目前整個產品都是基於 IaC 來設定
    2. 能夠輕鬆的於工作模式與維護模式中來回切換,每次的切換都能夠自動化完成,盡量減少人為操作
    3. 該解決方案盡量能夠靈活彈性,針對不同雲端廠商都要能夠適用,避免未來轉移時整個方案要砍掉重練
    4. 希望本身要能夠提供後門供開發人員去進行修復與測試
    5. 順利地告知使用者我們正在維護

    由於該公司所有的產品目前都是基於 AWS 架構下,因此作者後來想出了以下的系統設計

    1. 使用 Github Pages 存放網頁,該網頁用來描述當前處於維護模式
    2. 不同模式之間的切換決定透過 DNS 的方式來處理,當處於維修模式時,相關的連結都會指向 Github Pages。
    3. 透過 Route53 以及 CloudFront(CDN) 的方式來設定相關操作
    4. 透過產品本來的機制,當一切自動化完成後會自動通知使用者當前屬於維護模式

    最後整個系統操作流程如下
    1. 透過 Terraform 去創建 AWS 所需資源,包含 Route53, CloudFront
    2. 透過 Terraform 去創建 GitHub Page, 這部分因為 Provider 沒有完全符合需求,還需要額外的 scripts 直接跟 Github API 溝通
    3. Terraform 執行時,會透過變數來切換當前是屬於工作模式還是維護模式
    4. 如果是維護模式,就會修改 Route53, 將 CNAME 給指向 Github Page,因此使用者去訪問時都會導向 Github Page
    5. 如果是工作模式,就會修改 Route53, 將 CNAME 給指向 CloudFront 內的 IP,因此使用者訪問時都會導向真正的產品

    如果團隊本身也有這種需求,希望能夠將公告/維護等相關操作也都整合到日常工作流中,也許可以參考這種思路去思考,該如何自動化一切設定,讓所有的操作都盡可能的減少人為介入

    https://medium.com/env0/building-a-maintenance-mode-with-terraform-and-github-pages-3dadd009f7bd

  • 前端自動化測試 在 Taipei Ethereum Meetup Facebook 的最佳貼文

    2021-02-04 14:57:33
    有 8 人按讚

    📜 [專欄新文章] 2021 區塊鏈開發入門
    ✍️ Johnson Chen
    📥 歡迎投稿: https://medium.com/taipei-ethereum-meetup #徵技術分享文 #使用心得 #教學文 #medium

    在我大學的時候,除了學習網頁前端之外,因為課程報告的需要接觸到以太坊(Ethereum),於是開始學寫智能合約,包括它使用的程式語言 solidity。

    工作以後鮮少再碰以太坊的相關技術,直到最近想重新把以太坊學起來,故而決定寫這篇文章,讓初次接觸區塊鏈與智能合約的人更好地進入開發者的世界。這篇文章不只面向開發者,同時也希望能夠給對區塊鏈有興趣的人,指引一條清晰的學習路線。

    關於區塊鏈

    區塊鏈會被廣為人知,無非是因為虛擬貨幣的出現,而虛擬貨幣的鼻祖就是比特幣。在比特幣出現以前,沒有一個能夠在全球網路上通用的數位貨幣;在比特幣出現之後,才真的實現了數位化的貨幣,能夠在全球網路上流通。

    這樣的技術性突破,blockchain 的名字從比特幣白皮書中被萃取出來,而這項技術也被更多人拿去做研發以及創新。

    區塊鏈這項技術的特性可以簡單概括為兩點:去中心化(decentralized)與不可竄改(immutable)。去中心化有程度上的差別,在公共網路上由世界各地的節點共同維護的區塊鏈,去中心化程度較高;相較之下,私人企業開發由特定節點來驗證交易的區塊鏈,去中心化程度較低。

    為什麼是以太坊?

    這年頭區塊鏈三個字大行其道,大部分都是為區塊鏈而區塊鏈的商業炒作。容許我獨斷地說,以太坊才是區塊鏈應用的大門。

    以太坊由全球最大的區塊鏈社群組成,提供一個去中心化的虛擬機器(Ethereum Virtual Machine)來處理「智能合約」,它是一個公共的區塊鏈平台,逛逛以太坊的官網吧!

    智能合約

    在以太坊區塊鏈中有所謂的智能合約,智能合約能夠部屬到以太坊區塊鏈上,合約即程式碼,放到區塊鏈上就不能再更新,只能執行合約上的程式,持有以太幣的人能夠與合約進行交易。把智能合約想像成是一台自動販賣機,把錢(以太幣)投進去,飲料會掉出來(合約上的程式會被執行)。

    在現實生活中,簽訂合約的雙方認為合約有效而且可以被信任,是因為有國家法律來保障,違反合約可能會受到法律制裁;而用以太幣與智能合約互動,認為智能合約可以被信任,是因為智能合約的不可竄改性 — 以太坊虛擬機會毫無偏袒、完全中立、冰冷不帶任何感情地執行智能合約上已經寫好的程式碼。

    建立在智能合約之上的虛擬貨幣

    事實上,以太坊擴大了區塊鏈這項技術的應用層面。回頭想想,比特幣來自區塊鏈技術,某個人若想打造一款同比特幣一樣的虛擬貨幣,就得模仿比特幣去建造一個自己的虛擬貨幣區塊鏈,一個區塊鏈網路要能夠有效運作並非易事,還需要節點、需要靠人挖礦去驗證交易。此時,若使用以太坊的智能合約,撰寫虛擬貨幣需要的程式碼,將合約部屬到以太坊區塊鏈上,叮咚!他就可以發行自己的虛擬貨幣,根本不必再去建造底層的區塊鏈,也不用想挖不挖礦了。

    此時會發現以太坊就像是一個區塊鏈平台,你不需要親手打造區塊鏈網路,即可享有區塊鏈去中心化與不可竄改的特性。與其他智能合約的開發者共同使用以太坊虛擬機 EVM(Ethereum Virtual Machine),在 EVM 上部屬無上限個智能合約。

    以太坊是一項基礎建設,底層區塊鏈幫你架設好,開發者便有更多時間去發想應用到網頁、手機、或物連網設備上,以下是一段簡單的智能合約,該合約創造了一個虛擬貨幣簡稱 MAT…

    直接進入開發領域 — 線上編輯器 Remix

    Remix 是開發智能合約的線上編輯器,進入Remix官網,點選 Create New File 以後,把上方程式碼複製貼上。在左側欄位中有 solidity compiler 的選項,確認一下左側欄第一列顯示的版本,調成 0.7.0 (上方程式碼使用的版本),就可以按下下方 compile 的按鈕,將智能合約「編譯」成 bytecode(給機器讀的語言)。

    接著我們要部屬合約到區塊鏈上,首先到左側欄位點選 DEPLOY & RUN TRANSACTIONS 的選項,可以看到環境是 javascript VM,這是指現在要部屬到的測試用虛擬機。按下下方的按鈕 Deploy 即可將合約「部屬」到 javascript VM 上。成功部屬後,你會發現 ACCOUNT 所持有的以太幣,從 100 變成 99.9999…,我們得知部屬智能合約需要花費一點點以太幣。

    左側下方會有 Deployed Contracts,點開來就會列出合約上可供呼叫的函式,點那些函式就能與剛剛部屬上去的智能合約進行互動了。

    有些函式呼叫會引發交易,所以需要以太幣,有些則不用。在 ACCOUNT 的地方可以展開來,它提供許多的地址 (address),也就是錢包,每個錢包裡面預設給你 100 顆以太幣,試著用那些地址去操作智能合約,你就能慢慢體會什麼是建立在以太坊之上的虛擬貨幣了。

    真正的開發者世界

    實際上開發智能合約只能算是以太坊開發的其中一部分,其他包括以太坊區塊鏈擴容方案、節點驗證等等又是另一個開發領域了,那部份我就沒有研究太多。而智能合約的開發是比較接近應用層面的,透過網頁前端或手機應用程式,與智能合約進行互動,稱作 Dapp(Decentralized App) 的開發,也象徵著網際網路走向 web3.0 的時代。

    學習 solidity 語言,除了看硬生生的官方文件之外,我推薦去玩cryptozombies,我本身就是從這款網頁遊戲中學習這門語言,聽說是連小孩子都能輕易學習的教材。

    除了學 solidity 之外,網路上還有很多方便的開發工具,開發者主要是運用這些工具做測試、自動化部屬、串接前端等等。許多網路上的教學文章會使用 Truffle + Ganache + web3.js 來建置開發環境。但我在這裡推薦另一款開發環境的架構,如果是新手直接從 hardhat 開始也是非常適合的,hardhat 的教學文章寫得清楚完整,本篇文章使用的程式碼也是從 hardhat-hackathon-boilerplate 這個專案而來。hardhat 使用的開發環境是 Waffle + Hardhat + ethers,它幫你把開發環境處理的簡單又舒服,讓開發者可以專注在開發智能合約上。

    OpenZeppelin 是很有名的智能合約套件庫,開發時可以引入它的智能合約。智能合約很講究安全性,稍微沒寫好就可能被駭客鑽漏洞,虛擬貨幣就被盜走了!OpenZeppelin 提供的 SafeMath 很常被引入到專案,對新手來說看 OpenZeppelin 的合約也是很好的學習管道。此外,官方也建了一個學習網站ethernaut,主要在教導如何寫出安全性夠強的智能合約,可惜網站在我寫這篇文章的時間一直處於維修不能用的狀態。

    最後再介紹一款實際上線的智能合約專案:Argent。它是一款運用智能合約來做虛擬貨幣錢包的公司,除了使用他們的錢包之外,也可以看看他們的智能合約是怎麼寫的,感受一下專業的程式碼架構與寫法。

    小結

    這篇文章希望能幫助到想了解區塊鏈這項技術的人,同時也想呈現一個智能合約的開發生態系,你大可以不必花太多力氣去了解密碼學、挖礦、節點、共識機制等等五花八門的專有名詞;反之,你可以專注在智能合約的開發,或回到本質去思考去中心化的用意、以及為什麼不可竄改的特性那麼重要。

    智能合約除了做虛擬貨幣之外,也能夠做投票系統,原本以貨幣為起始點的區塊鏈技術,是智能合約的出現擴大了區塊鏈更具彈性的用途,這圈子需要更多的開發者來探勘這片新大陸。

    尤其鼓勵人文社會科學的人才,無論是哲學、政治、經濟、法律或社會等各方領域,試著撇開人工智慧將主導未來社會的發展路線,與之截然不同的另一種形式:人類社會能否依靠科技的力量,促成彼此之間的合作,創造更有效率的市場、更公平的治理方式?

    延伸閱讀:激進市場(Radical Markets: Uprooting Capitalism and Democracy for a Just Society)

    2021 區塊鏈開發入門 was originally published in Taipei Ethereum Meetup on Medium, where people are continuing the conversation by highlighting and responding to this story.

    👏 歡迎轉載分享鼓掌

你可能也想看看

搜尋相關網站