成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

cypress進(jìn)行e2e測(cè)試之理論

chnmagnus / 1241人閱讀

摘要:進(jìn)行測(cè)試之理論是目前很火的一個(gè)測(cè)試組件,內(nèi)部綁定了之類的斷言為了讓代碼代碼更有說服力,減少提交測(cè)試錯(cuò)誤,進(jìn)行測(cè)試顯然是非常有必要的。

cypress 進(jìn)行 e2e 測(cè)試之理論

cypress 是目前 e2e 很火的一個(gè)測(cè)試組件,內(nèi)部綁定了 macha、chai、chai-jquery 之類的斷言,為了讓代碼代碼
更有說服力,減少提交測(cè)試錯(cuò)誤,進(jìn)行 e2e 測(cè)試顯然是非常有必要的。

官網(wǎng) 
GitHub

借鑒官網(wǎng)一句話來說:

Cypress is a next generation front end testing tool built for the modern web. We address the key
pain points developers and QA engineers face when testing modern applications.

本文環(huán)境
node v9.5
npm v5.5
e2e 簡(jiǎn)介

e2e 測(cè)試端對(duì)端測(cè)試的簡(jiǎn)稱, e2e 即為end to end,
指任意一個(gè)人的社交、交易、休閑都可以直接與另外任意一個(gè)人產(chǎn)生關(guān)系,去中心化、渠道化.

cypress cypress 環(huán)境搭建

做前端怎么少的多的了 npm 呢

$ npm i -D cypress

然后為了方便起見,咱們?cè)?b>package.json中寫入下面腳本:

{
  "scripts": {
    "e2e:open": "cypress open",
    "e2e:run": "cypress run"
  }
}

運(yùn)行npm run e2e:open,啟動(dòng)一個(gè) cypress 的服務(wù)器,如下:

如下圖這就完成了一個(gè)啟動(dòng)一個(gè) cypress。第一次點(diǎn)開時(shí)候,cypress 會(huì)幫你創(chuàng)建一個(gè)初始化配置目錄,這是
cypress 推薦的目錄的結(jié)構(gòu),當(dāng)然也可以自己創(chuàng)建。

點(diǎn)擊 example_spec.js 文件,然后可以看到如下界面,cypress 開始測(cè)試:

上面就看到 cypress 的運(yùn)行過程了。下面看看 example_spec.js(文件的位置
:projectName/cypress/integration)文件中寫了啥:

describe("Kitchen Sink", function() {
  it(".should() - assert that  is correct", function() {
    // ...
  }
})</pre>
<p>這是主要結(jié)構(gòu)的,下面大部分都是在一個(gè)<b>it</b>函數(shù)內(nèi)部,是測(cè)試?yán)锩娴幕卣{(diào)函數(shù)。詳細(xì)可以查看 TDD 和 BDD 測(cè)試<br>框架,cypress 綁定了這些測(cè)試框架。</p>
<b>cy.visit</b>
<p>這是 cypress 里面一個(gè)很重要的方法,可以訪問一個(gè)鏈接,列入 example.js 文件如下:</p>
<pre>beforeEach(function() {
  // Visiting our app before each test removes any state build up from
  // previous tests. Visiting acts as if we closed a tab and opened a fresh one
  cy.visit("https://example.cypress.io/commands/querying")
})</pre>
<p>這里就是在前置鉤子函數(shù)里面訪問了<b>https://...../querying</b>這個(gè)鏈接。如果代碼需要瀏覽器調(diào)試,比如用戶交<br>互點(diǎn)擊,用戶輸入之類的。第一步就是訪問:cy.visit</p>
<b>cy.get</b>
<p>還是從 example_spec.js 問中說起:</p>
<pre>it("cy.get() - query DOM elements", function() {
  // https://on.cypress.io/get

  // Get DOM elements by id
  cy.get("#query-btn").should("contain", "Button")

  // Get DOM elements by class
  cy.get(".query-btn").should("contain", "Button")

  cy.get("#querying .well>button:first").should("contain", "Button")
  //              ?
  // Use CSS selectors just like jQuery
})</pre>
<p>這里定義了一個(gè)測(cè)試單元,在這個(gè)里面做了啥呢?第一步獲取 id 為 query-btn 這個(gè)按鈕。接下來 should 操作<br>,奉上一張表自行查看: </p>
<p>cy.get 還有一個(gè)玩法就是 cy.get("@app")這種,意思說之前你已經(jīng)<b>cy.get(".app").as("app")</b>,不需要再次獲<br>取了,直接使用別名就好了</p>
<p>從官網(wǎng)截圖的表格,詳<br>細(xì)jquery-chai 文檔表格</p>
<p>這里看到<b>cy.get()</b>和<b>jquery.$</b>是不是很像,在官網(wǎng)這里說了這樣一句話:</p>
<pre>The querying behavior of this command matches exactly how $(…) works in jQuery.</pre>
<p>所以可以將 cy.get()當(dāng)$一樣來用即可,不過這里返回的不過 jquery 對(duì)象罷了,這里返回的事通過 cypress 包<br>裝過的對(duì)象可以在控制臺(tái)看到這樣的東西,見下圖:<br></p>
<p>是一個(gè)用于 cypress 所有方法的對(duì)象。然后可以操作他的 api 了。</p>
<p>第一部分,主要是查詢,查詢頁面元素是否按照我們開發(fā)想要的存在,下面看第二部分:</p>
<pre>context("Actions", function() {
  beforeEach(function() {
    cy.visit("https://example.cypress.io/commands/actions")
  })

  // Let"s perform some actions on DOM elements
  // https://on.cypress.io/interacting-with-elements

  it(".type() - type into a DOM element", function() {
    // https://on.cypress.io/type
    cy
      .get(".action-email")
      .type("fake@email.com")
      .should("have.value", "fake@email.com")

      // .type() with special character sequences
      .type("{leftarrow}{rightarrow}{uparrow}{downarrow}")
      .type("{del}{selectall}{backspace}")

      // .type() with key modifiers
      .type("{alt}{option}") //these are equivalent
      .type("{ctrl}{control}") //these are equivalent
      .type("{meta}{command}{cmd}") //these are equivalent
      .type("{shift}")

      // Delay each keypress by 0.1 sec
      .type("slow.typing@email.com", { delay: 100 })
      .should("have.value", "slow.typing@email.com")

    cy
      .get(".action-disabled")
      // Ignore error checking prior to type
      // like whether the input is visible or disabled
      .type("disabled error checking", { force: true })
      .should("have.value", "disabled error checking")
  })
})</pre>
<p>這一部分主要是進(jìn)行獲取元素交互, 下面來說交互是如何搞得。 與 cy.get 相似還有:</p>

<p>cy.contains 通過文本獲取元素</p>
<p>cy.closet 見 jqery</p>
<p>cy.next/cy.nextAll 可以和 cy.contains 聯(lián)合使用獲取該節(jié)點(diǎn)的下一個(gè)節(jié)點(diǎn)</p>
<p>cy.prev/cy.prevAll 同上</p>
<p>cy.children/cy.parents/cy.parent 獲取子節(jié)點(diǎn)/ 所有的父節(jié)點(diǎn) / 父節(jié)點(diǎn)</p>
<p>cy.first/cy.last</p>
<p>cy.url 獲取當(dāng)前頁面 url</p>
<p>cy.title 獲取當(dāng)前頁面標(biāo)題</p>
<p>... API 挺多的,同樣奉<br>上api 文檔
</p>

<b>cypress 交互邏輯</b>
<p>既然要交互肯定需要點(diǎn)擊輸入滾動(dòng),可以還存在拖拽等等。咱們就暫時(shí)從輸入開始說起啦</p>
<b>cy.type</b>
<p>這不是一個(gè)可以直接使用的方法,要配合<b>cy.get</b>使用的,作用是給空間進(jìn)行輸入。例如:</p>
<b>測(cè)試輸入例如 text, textarea</b>
<pre>cy.get("input").type("hello world")</pre>
<b>測(cè)試 tabIndex</b>
<pre>  <div   id="6a22guqa"   class="el" tabIndex="1">
    This is TabIndex div.
  </div></pre>
<pre>cy.get(".el").type("laldkadaljdkljasf") // 這個(gè)里面是隨機(jī)字符串</pre>
<b>測(cè)試 input 為日期的</b>
<pre>cy.get("input[type=date]").type("2008-8-9")</pre>
<b>鍵盤綁定</b>
<p>下面直接是對(duì) input 進(jìn)行組合鍵盤操作</p>
<pre>cy.get("input").type("{shift}{alt}Q")</pre>
<p>按住鍵盤操作</p>
<pre>cy.get("input").type("{alt}這里是按了一下alt后輸入的內(nèi)容")</pre>
<p>還有長(zhǎng)按鍵盤之類的操作,詳細(xì)就看官網(wǎng)了這里之類奉上鏈<br>接https://docs.cypress.io/api/commands/type.html#Key-Combinations</p>
<p>這里就是關(guān)于鍵盤的組合操作。</p>
<b>對(duì)于選擇例如 radio, checkbox</b>
<p>這些就只需要利用點(diǎn)擊事件即可,如下:</p>
<pre>cy
  .get("input[type=radio]")
  .as("radio")
  .click()
cy.get("@radio").should("be.checked")</pre>
<b>定時(shí)</b>
<b>cy.wait</b>
<p>下面是等待 1s</p>
<pre>cy.wait(1000)</pre>
<b>cy.clock 和 cy.tick</b>
<p>自己的代碼:</p>
<pre>var seconds = 0
setInterval(() => {
  $("#seconds-elapsed").text(++seconds + " seconds")
}, 1000)</pre>
<p>測(cè)試代碼</p>
<pre>cy.clock()
cy.visit("/index.html")
cy.tick(1000)
cy.get("#seconds-elapsed").should("have.text", "1 seconds")
cy.tick(1000)
cy.get("#seconds-elapsed").should("have.text", "2 seconds")</pre>
<p> 這里就會(huì)出現(xiàn)關(guān)于 clock 和 tick<br>的用法,更多用法看文檔,我也有部分迷惑的。待后來再解決。老規(guī)矩文檔地址:<br>地址</p>
<b>關(guān)于 cypress 的配置</b>
<p>先復(fù)制一段出來:</p>
<pre>{
  "baseUrl": "http://localhost:8080",
  "pageLoadTimeout": 3000,
  "viewportHeight": 667,
  "viewportWidth": 375
}</pre>
<p>這是一個(gè)非常精簡(jiǎn)的配置了:</p>

<p>baseUrl 基礎(chǔ)鏈接,之后在是使用 cy.visit 的時(shí)候,只需要訪問具體路由例如: cy.visit("/Hello")</p>
<p>
<p>viewport 兩個(gè)屬性</p>

<p>viewportHeight 測(cè)試窗口的高度</p>
<p>viewportWidth 測(cè)試窗口的寬度</p>

</p>
<p>pageLoadTimeout 頁面家安在超過 3000ms 即為超時(shí)。</p>

<b>總結(jié)</b>
<p>上面是 cypress 的基本用法,cypress 是基于 electron 的一個(gè)測(cè)試框架,提供 web 環(huán)境進(jìn)行點(diǎn)對(duì)點(diǎn)的測(cè)試,在<br>programer 思維下,進(jìn)行自動(dòng)化的交互操作,必要點(diǎn)檢測(cè)說明,這是一個(gè)非常棒的用處。例如之后擁有數(shù)據(jù)埋點(diǎn),<br>可以在固定的位置檢測(cè)是否有埋點(diǎn)。測(cè)試想要的地方是否匹配的數(shù)據(jù)。模擬用戶的點(diǎn)擊操作,這都是非常棒的。在<br>jquery 操作年代,各種 id 和 class 奇怪命名下,這些都可以容易找到,在 vue 和 react 大行其道的年代,但<br>是卻可以通過文本尋找節(jié)點(diǎn)。這也是非常棒的體驗(yàn),更多秘密需要去體驗(yàn),奉上官方地址<br>:官網(wǎng) cypress</p>           
               
                                           
                       
                 </div>
            
                     <div   id="6a22guqa"   class="mt-64 tags-seach" >
                 <div   id="6a22guqa"   class="tags-info">
                                                                                                                    
                         <a style="width:120px;" title="云服務(wù)器" href="http://m.hztianpu.com/site/active/kuaijiesale.html?ytag=seo">云服務(wù)器</a>
                                             
                         <a style="width:120px;" title="GPU云服務(wù)器" href="http://m.hztianpu.com/site/product/gpu.html">GPU云服務(wù)器</a>
                                                                                                                                                 
                                      
                     
                    
                                                                                               <a style="width:120px;" title="進(jìn)行測(cè)試" href="http://m.hztianpu.com/yun/tag/jinxingceshi/">進(jìn)行測(cè)試</a>
                                                                                                           <a style="width:120px;" title="java進(jìn)行接口測(cè)試" href="http://m.hztianpu.com/yun/tag/javajinxingjiekouceshi/">java進(jìn)行接口測(cè)試</a>
                                                                                                           <a style="width:120px;" title="cypress" href="http://m.hztianpu.com/yun/tag/cypress/">cypress</a>
                                                                                                           <a style="width:120px;" title="云主機(jī)上可以進(jìn)行壓力測(cè)試嗎" href="http://m.hztianpu.com/yun/tag/yunzhujishangkeyijinxingyaliceshima/">云主機(jī)上可以進(jìn)行壓力測(cè)試嗎</a>
                                                         
                 </div>
               
              </div>
             
               <div   id="6a22guqa"   class="entry-copyright mb-30">
                   <p class="mb-15"> 文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。</p>
                 
                   <p>轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/94633.html</p>
               </div>
                      
               <ul class="pre-next-page">
                 
                                  <li id="6a22guqa"    class="ellipsis"><a class="hpf" href="http://m.hztianpu.com/yun/94632.html">上一篇:如何把滑動(dòng)條變好看一點(diǎn)</a></li>  
                                                
                                       <li id="6a22guqa"    class="ellipsis"><a class="hpf" href="http://m.hztianpu.com/yun/94634.html">下一篇:關(guān)于js節(jié)流函數(shù)throttle和防抖動(dòng)debounce</a></li>
                                  </ul>
              </div>
              <div   id="6a22guqa"   class="about_topicone-mid">
                <h3 class="top-com-title mb-0"><span data-id="0">相關(guān)文章</span></h3>
                <ul class="com_white-left-mid atricle-list-box">
                             
                                                                                                    <li>
                                                <div   id="6a22guqa"   class="atricle-list-right">
                          <h2 class="ellipsis2"><a class="hpf" href="http://m.hztianpu.com/yun/107684.html"><b>前端<em>E2E</em><em>測(cè)試</em>框架 <em>cypress</em>了解一下</b></a></h2>
                                                     <p class="ellipsis2 good">摘要:是一款開箱即用可以跑在瀏覽器上的測(cè)試工具。同樣,測(cè)試了也可以直接調(diào)試。這個(gè)時(shí)候我們的測(cè)試文件就可以訪問了,點(diǎn)擊之后發(fā)現(xiàn)他需要我們編寫測(cè)試用例,那么接下來就手把手教你編寫基本的測(cè)試用例。

What is E2E?
所謂的E2E就是end-to-end。  假設(shè)我們編寫的每個(gè)功能程序都是一個(gè)黑匣子,最終用戶也只會(huì)看到這個(gè)黑匣子,那么站在用戶的角度來看并不需要知道這個(gè)黑匣子內(nèi)部是什么東西也不...</p>
                                                   
                          <div   id="6a22guqa"   class="com_white-left-info">
                                <div   id="6a22guqa"   class="com_white-left-infol">
                                    <a href="http://m.hztianpu.com/yun/u-172.html"><img src="http://m.hztianpu.com/yun/data/avatar/000/00/01/small_000000172.jpg" alt=""><span id="6a22guqa"    class="layui-hide64">mushang</span></a>
                                    <time datetime="">2019-08-26 11:51</time>
                                    <span><i class="fa fa-commenting"></i>評(píng)論0</span> 
                                    <span><i class="fa fa-star"></i>收藏0</span> 
                                </div>
                          </div>
                      </div>
                    </li> 
                                                                                       <li>
                                                <div   id="6a22guqa"   class="atricle-list-right">
                          <h2 class="ellipsis2"><a class="hpf" href="http://m.hztianpu.com/yun/94439.html"><b>撩<em>測(cè)試</em>MM神器<em>cypress</em>使用入門</b></a></h2>
                                                     <p class="ellipsis2 good">摘要:上也有幾個(gè)臨時(shí)方案,目前我傾向使用自帶的來查看。在打開的測(cè)試的瀏覽器中打開切到按下用戶按,輸入,選擇重新刷新并統(tǒng)計(jì)代碼執(zhí)行覆蓋率。那么,起來為了高撩質(zhì)測(cè)量試代碼,起來。

不很久不很久以前
據(jù)說某家公司有兩位前端,天天擼bug,為啥嘞?只怪測(cè)試MM傾人國(guó),輕語哥哥有bug。?(??????)?? 可是最近兩位有點(diǎn)犯愁 Σ(っ °Д °;)っ。測(cè)試MM有幾次提了緊急bug,都在旁邊鼓勵(lì)他們...</p>
                                                   
                          <div   id="6a22guqa"   class="com_white-left-info">
                                <div   id="6a22guqa"   class="com_white-left-infol">
                                    <a href="http://m.hztianpu.com/yun/u-837.html"><img src="http://m.hztianpu.com/yun/data/avatar/000/00/08/small_000000837.jpg" alt=""><span id="6a22guqa"    class="layui-hide64">MAX_zuo</span></a>
                                    <time datetime="">2019-08-22 16:32</time>
                                    <span><i class="fa fa-commenting"></i>評(píng)論0</span> 
                                    <span><i class="fa fa-star"></i>收藏0</span> 
                                </div>
                          </div>
                      </div>
                    </li> 
                                                                                       <li>
                                                <div   id="6a22guqa"   class="atricle-list-right">
                          <h2 class="ellipsis2"><a class="hpf" href="http://m.hztianpu.com/yun/95054.html"><b>端到端<em>測(cè)試</em>哪家強(qiáng)?不容錯(cuò)過的<em>Cypress</em></b></a></h2>
                                                     <p class="ellipsis2 good">摘要:閱讀原文目前測(cè)試工具有哪些項(xiàng)目不需要不需要端到端測(cè)試一般都需要一個(gè)容器,來運(yùn)行前端應(yīng)用。向快速,一致和可靠的無剝落測(cè)試問好。

閱讀原文
1. 目前E2E測(cè)試工具有哪些?


項(xiàng)目
Web
Star



puppeteer
Chromium (~170Mb Mac, ~282Mb Linux, ~280Mb Win)
31906


nightmare
Electron
15502

...</p>
                                                   
                          <div   id="6a22guqa"   class="com_white-left-info">
                                <div   id="6a22guqa"   class="com_white-left-infol">
                                    <a href="http://m.hztianpu.com/yun/u-573.html"><img src="http://m.hztianpu.com/yun/data/avatar/000/00/05/small_000000573.jpg" alt=""><span id="6a22guqa"    class="layui-hide64">LancerComet</span></a>
                                    <time datetime="">2019-08-22 17:19</time>
                                    <span><i class="fa fa-commenting"></i>評(píng)論0</span> 
                                    <span><i class="fa fa-star"></i>收藏0</span> 
                                </div>
                          </div>
                      </div>
                    </li> 
                                                                                       <li>
                                                <div   id="6a22guqa"   class="atricle-list-right">
                          <h2 class="ellipsis2"><a class="hpf" href="http://m.hztianpu.com/yun/99095.html"><b>FE.TEST-前端<em>測(cè)試</em>初探</b></a></h2>
                                                     <p class="ellipsis2 good">摘要:使用可以快速生成一個(gè)項(xiàng)目,其中包含了和以及覆蓋率統(tǒng)計(jì)的配置參考一個(gè)創(chuàng)建測(cè)試腳本的快速方法其他參考資料前端自動(dòng)化測(cè)試概覽測(cè)試之使用對(duì)項(xiàng)目進(jìn)行單元測(cè)試

showImg(https://segmentfault.com/img/bVbjfXr?w=600&h=317);
前言
測(cè)試可以提供快速反饋,根據(jù)測(cè)試用例覆蓋代碼,從而提升代碼開發(fā)效率和質(zhì)量。根據(jù)投入產(chǎn)出價(jià)值,通常迭代較快的業(yè)務(wù)邏輯不做...</p>
                                                   
                          <div   id="6a22guqa"   class="com_white-left-info">
                                <div   id="6a22guqa"   class="com_white-left-infol">
                                    <a href="http://m.hztianpu.com/yun/u-1120.html"><img src="http://m.hztianpu.com/yun/data/avatar/000/00/11/small_000001120.jpg" alt=""><span id="6a22guqa"    class="layui-hide64">Travis</span></a>
                                    <time datetime="">2019-08-23 12:55</time>
                                    <span><i class="fa fa-commenting"></i>評(píng)論0</span> 
                                    <span><i class="fa fa-star"></i>收藏0</span> 
                                </div>
                          </div>
                      </div>
                    </li> 
                                                                           
                </ul>
              </div>
              
               <div   id="6a22guqa"   class="topicone-box-wangeditor">
                  
                  <h3 class="top-com-title mb-64"><span>發(fā)表評(píng)論</span></h3>
                   <div   id="6a22guqa"   class="xcp-publish-main flex_box_zd">
                                      
                      <div   id="6a22guqa"   class="unlogin-pinglun-box">
                        <a href="javascript:login()" class="grad">登陸后可評(píng)論</a>
                      </div>                   </div>
               </div>
              <div   id="6a22guqa"   class="site-box-content">
                <div   id="6a22guqa"   class="site-content-title">
                  <h3 class="top-com-title mb-64"><span>0條評(píng)論</span></h3>   
                </div> 
                      <div   id="6a22guqa"   class="pages"></ul></div>
              </div>
           </div>
           <div   id="6a22guqa"   class="layui-col-md4 layui-col-lg3 com_white-right site-wrap-right">
              <div   id="6a22guqa"   class=""> 
                <div   id="6a22guqa"   class="com_layuiright-box user-msgbox">
                    <a href="http://m.hztianpu.com/yun/u-768.html"><img src="http://m.hztianpu.com/yun/data/avatar/000/00/07/small_000000768.jpg" alt=""></a>
                    <h3><a href="http://m.hztianpu.com/yun/u-768.html" rel="nofollow">chnmagnus</a></h3>
                    <h6>男<span>|</span>高級(jí)講師</h6>
                    <div   id="6a22guqa"   class="flex_box_zd user-msgbox-atten">
                     
                                                                      <a href="javascript:attentto_user(768)" id="attenttouser_768" class="grad follow-btn notfollow attention">我要關(guān)注</a>
      
                                                                                        <a href="javascript:login()" title="發(fā)私信" >我要私信</a>
                     
                                            
                    </div>
                    <div   id="6a22guqa"   class="user-msgbox-list flex_box_zd">
                          <h3 class="hpf">TA的文章</h3>
                          <a href="http://m.hztianpu.com/yun/ut-768.html" class="box_hxjz">閱讀更多</a>
                    </div>
                      <ul class="user-msgbox-ul">
                                                  <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/119914.html">把 RNN 循環(huán)神經(jīng)網(wǎng)絡(luò)植入體內(nèi),僅憑一張“薄片”,就能直接檢測(cè)你有無心律異常</a></h3>
                            <p>閱讀 3650<span>·</span>2021-09-13 10:28</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/118068.html">SecureIDC:$19/月/1GB內(nèi)存/100GB SSD空間/500GB流量/1Gbps端口/</a></h3>
                            <p>閱讀 1999<span>·</span>2021-08-10 09:43</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/116086.html">第三集: 從零開始實(shí)現(xiàn)一套pc端vue的ui組件庫(kù)(button組件其一)</a></h3>
                            <p>閱讀 1061<span>·</span>2019-08-30 15:44</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/115408.html">Bootstrap 柵格布局</a></h3>
                            <p>閱讀 3247<span>·</span>2019-08-30 13:14</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/113990.html">解決input 中placeholder的那些神坑</a></h3>
                            <p>閱讀 1936<span>·</span>2019-08-29 16:56</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/113841.html">一個(gè)常年更新的CSS采坑合集</a></h3>
                            <p>閱讀 2997<span>·</span>2019-08-29 16:35</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/112270.html">HTML CSS 實(shí)現(xiàn)鼠標(biāo)懸停時(shí)圖片拉近效果</a></h3>
                            <p>閱讀 2905<span>·</span>2019-08-29 12:58</p></li>
                                                       <li><h3 class="ellipsis"><a href="http://m.hztianpu.com/yun/109497.html">canvas-塔防游戲</a></h3>
                            <p>閱讀 922<span>·</span>2019-08-26 13:46</p></li>
                                                
                      </ul>
                </div>

                   <!-- 文章詳情右側(cè)廣告-->
              
  <div   id="6a22guqa"   class="com_layuiright-box">
                  <h6 class="top-com-title"><span>最新活動(dòng)</span></h6> 
           
         <div   id="6a22guqa"   class="com_adbox">
                    <div   id="6a22guqa"   class="layui-carousel" id="right-item">
                      <div carousel-item>
                                                                                                                       <div>
                          <a href="http://m.hztianpu.com/site/active/kuaijiesale.html?ytag=seo"  rel="nofollow">
                            <img src="http://m.hztianpu.com/yun/data/attach/240625/2rTjEHmi.png" alt="云服務(wù)器">                                 
                          </a>
                        </div>
                                                <div>
                          <a href="http://m.hztianpu.com/site/product/gpu.html"  rel="nofollow">
                            <img src="http://m.hztianpu.com/yun/data/attach/240807/7NjZjdrd.png" alt="GPU云服務(wù)器">                                 
                          </a>
                        </div>
                                                                   
                    
                        
                      </div>
                    </div>
                      
                    </div>                    <!-- banner結(jié)束 -->
              
<div   id="6a22guqa"   class="adhtml">

</div>
                                </div>              </div>
           </div>
        </div>
      </div> 
    </section>
    <!-- wap拉出按鈕 -->
     <div   id="6a22guqa"   class="site-tree-mobile layui-hide">
      <i class="layui-icon layui-icon-spread-left"></i>
    </div>
    <!-- wap遮罩層 -->
    <div   id="6a22guqa"   class="site-mobile-shade"></div>
    
       <!--付費(fèi)閱讀 -->
       <div   class="6a22guqa"   id="payread">
         <div   id="6a22guqa"   class="layui-form-item">閱讀需要支付1元查看</div>  
         <div   id="6a22guqa"   class="layui-form-item"><button class="btn-right">支付并查看</button></div>     
       </div>
      
  <link rel="stylesheet" type="text/css" href="http://m.hztianpu.com/yun/static/js/neweditor/code/styles/tomorrow-night-eighties.css">
    
    






<footer>
        <div   id="6a22guqa"   class="layui-container">
            <div   id="6a22guqa"   class="flex_box_zd">
              <div   id="6a22guqa"   class="left-footer">
                    <h6><a href="http://m.hztianpu.com/"><img src="http://m.hztianpu.com/yun/static/theme/ukd//images/logo.png" alt="UCloud (優(yōu)刻得科技股份有限公司)"></a></h6>
                    <p>UCloud (優(yōu)刻得科技股份有限公司)是中立、安全的云計(jì)算服務(wù)平臺(tái),堅(jiān)持中立,不涉足客戶業(yè)務(wù)領(lǐng)域。公司自主研發(fā)IaaS、PaaS、大數(shù)據(jù)流通平臺(tái)、AI服務(wù)平臺(tái)等一系列云計(jì)算產(chǎn)品,并深入了解互聯(lián)網(wǎng)、傳統(tǒng)企業(yè)在不同場(chǎng)景下的業(yè)務(wù)需求,提供公有云、混合云、私有云、專有云在內(nèi)的綜合性行業(yè)解決方案。</p>
              </div>
              <div   id="6a22guqa"   class="right-footer layui-hidemd">
                  <ul class="flex_box_zd">
                      <li>
                        <h6>UCloud與云服務(wù)</h6>
                         <p><a href="http://m.hztianpu.com/site/about/intro/">公司介紹</a></p>
                         <p><a  >加入我們</a></p>
                         <p><a href="http://m.hztianpu.com/site/ucan/onlineclass/">UCan線上公開課</a></p>
                         <p><a href="http://m.hztianpu.com/site/solutions.html" >行業(yè)解決方案</a></p>                                                  <p><a href="http://m.hztianpu.com/site/pro-notice/">產(chǎn)品動(dòng)態(tài)</a></p>
                      </li>
                      <li>
                        <h6>友情鏈接</h6>                                             <p><a >GPU算力平臺(tái)</a></p>                                             <p><a >UCloud私有云</a></p>
                                             <p><a >SurferCloud</a></p>                                             <p><a >工廠仿真軟件</a></p>                                                                                       <p><a >AI繪畫</a></p>
                                              <p><a >Wavespeed AI</a></p> 
                                             
                      </li>
                      <li>
                        <h6>社區(qū)欄目</h6>
                         <p><a href="http://m.hztianpu.com/yun/column/index.html">專欄文章</a></p>
                     <p><a href="http://m.hztianpu.com/yun/udata/">專題地圖</a></p>                      </li>
                      <li>
                        <h6>常見問題</h6>
                         <p><a href="http://m.hztianpu.com/site/ucsafe/notice.html" >安全中心</a></p>
                         <p><a href="http://m.hztianpu.com/site/about/news/recent/" >新聞動(dòng)態(tài)</a></p>
                         <p><a href="http://m.hztianpu.com/site/about/news/report/">媒體動(dòng)態(tài)</a></p>                                                  <p><a href="http://m.hztianpu.com/site/cases.html">客戶案例</a></p>                                                
                         <p><a href="http://m.hztianpu.com/site/notice/">公告</a></p>
                      </li>
                      <li>
                          <span><img src="https://static.ucloud.cn/7a4b6983f4b94bcb97380adc5d073865.png" alt="優(yōu)刻得"></span>
                          <p>掃掃了解更多</p></div>
            </div>
            <div   id="6a22guqa"   class="copyright">Copyright ? 2012-2025 UCloud 優(yōu)刻得科技股份有限公司<i>|</i><a rel="nofollow" >滬公網(wǎng)安備 31011002000058號(hào)</a><i>|</i><a rel="nofollow" ></a> 滬ICP備12020087號(hào)-3</a><i>|</i> 

<!-- Global site tag (gtag.js) - Google Analytics -->


</div> 
        </div>
    </footer>

<footer>
<div class="friendship-link">
<p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p>
<h1><a href="http://m.hztianpu.com/">成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码</a></h1>

<div class="friend-links">


</div>
</div>

</footer>
<script>
(function(){
    var bp = document.createElement('script');
    var curProtocol = window.location.protocol.split(':')[0];
    if (curProtocol === 'https') {
        bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
    }
    else {
        bp.src = 'http://push.zhanzhang.baidu.com/push.js';
    }
    var s = document.getElementsByTagName("script")[0];
    s.parentNode.insertBefore(bp, s);
})();
</script>
</body><div id="8yiec" class="pl_css_ganrao" style="display: none;"><code id="8yiec"><table id="8yiec"><tbody id="8yiec"></tbody></table></code><menu id="8yiec"><li id="8yiec"><option id="8yiec"></option></li></menu><dfn id="8yiec"></dfn><abbr id="8yiec"><ul id="8yiec"><pre id="8yiec"></pre></ul></abbr><acronym id="8yiec"><xmp id="8yiec"><th id="8yiec"></th></xmp></acronym><nav id="8yiec"></nav><pre id="8yiec"></pre><xmp id="8yiec"><th id="8yiec"><menu id="8yiec"></menu></th></xmp><del id="8yiec"><sup id="8yiec"><rt id="8yiec"></rt></sup></del><noframes id="8yiec"><samp id="8yiec"><tbody id="8yiec"></tbody></samp></noframes><xmp id="8yiec"></xmp><rt id="8yiec"><code id="8yiec"><em id="8yiec"></em></code></rt><nav id="8yiec"></nav><optgroup id="8yiec"><tr id="8yiec"><sup id="8yiec"></sup></tr></optgroup><abbr id="8yiec"><li id="8yiec"><center id="8yiec"></center></li></abbr><nav id="8yiec"></nav><tr id="8yiec"></tr><dl id="8yiec"></dl><s id="8yiec"><code id="8yiec"><option id="8yiec"></option></code></s><bdo id="8yiec"></bdo><wbr id="8yiec"><cite id="8yiec"><abbr id="8yiec"></abbr></cite></wbr><samp id="8yiec"><pre id="8yiec"><source id="8yiec"></source></pre></samp><li id="8yiec"></li><code id="8yiec"></code><source id="8yiec"></source><nav id="8yiec"><kbd id="8yiec"><pre id="8yiec"></pre></kbd></nav><button id="8yiec"></button><fieldset id="8yiec"><em id="8yiec"><del id="8yiec"></del></em></fieldset><ul id="8yiec"><pre id="8yiec"><source id="8yiec"></source></pre></ul><option id="8yiec"></option><small id="8yiec"></small><optgroup id="8yiec"></optgroup><option id="8yiec"></option><button id="8yiec"></button><tfoot id="8yiec"></tfoot><button id="8yiec"></button><th id="8yiec"></th><option id="8yiec"></option><delect id="8yiec"><strike id="8yiec"><s id="8yiec"></s></strike></delect><td id="8yiec"></td><dfn id="8yiec"></dfn><blockquote id="8yiec"></blockquote><button id="8yiec"></button><tr id="8yiec"></tr><acronym id="8yiec"></acronym><tbody id="8yiec"></tbody><cite id="8yiec"><abbr id="8yiec"><kbd id="8yiec"></kbd></abbr></cite><dfn id="8yiec"></dfn><pre id="8yiec"></pre><fieldset id="8yiec"><table id="8yiec"><tr id="8yiec"></tr></table></fieldset><object id="8yiec"><tbody id="8yiec"><button id="8yiec"></button></tbody></object><del id="8yiec"></del><abbr id="8yiec"></abbr><tr id="8yiec"></tr><abbr id="8yiec"></abbr><object id="8yiec"><tbody id="8yiec"><button id="8yiec"></button></tbody></object><fieldset id="8yiec"></fieldset><tbody id="8yiec"><source id="8yiec"><small id="8yiec"></small></source></tbody><menu id="8yiec"></menu><noframes id="8yiec"></noframes><tr id="8yiec"></tr><bdo id="8yiec"></bdo><xmp id="8yiec"></xmp><source id="8yiec"></source><pre id="8yiec"></pre><abbr id="8yiec"><pre id="8yiec"><blockquote id="8yiec"></blockquote></pre></abbr><abbr id="8yiec"><pre id="8yiec"><blockquote id="8yiec"></blockquote></pre></abbr><pre id="8yiec"></pre><tr id="8yiec"><s id="8yiec"><bdo id="8yiec"></bdo></s></tr><tbody id="8yiec"></tbody><sup id="8yiec"></sup><td id="8yiec"></td><table id="8yiec"><abbr id="8yiec"><pre id="8yiec"></pre></abbr></table><tbody id="8yiec"></tbody><tfoot id="8yiec"><object id="8yiec"><tbody id="8yiec"></tbody></object></tfoot><strong id="8yiec"></strong><tbody id="8yiec"></tbody><xmp id="8yiec"></xmp><delect id="8yiec"><strike id="8yiec"><menu id="8yiec"></menu></strike></delect><center id="8yiec"><dl id="8yiec"><input id="8yiec"></input></dl></center><tr id="8yiec"></tr><fieldset id="8yiec"><table id="8yiec"><tr id="8yiec"></tr></table></fieldset><center id="8yiec"></center><tbody id="8yiec"><pre id="8yiec"><blockquote id="8yiec"></blockquote></pre></tbody><samp id="8yiec"></samp><table id="8yiec"></table><dd id="8yiec"><cite id="8yiec"><nav id="8yiec"></nav></cite></dd><sup id="8yiec"></sup><abbr id="8yiec"></abbr><tr id="8yiec"></tr><ul id="8yiec"><tbody id="8yiec"><source id="8yiec"></source></tbody></ul><dfn id="8yiec"></dfn><del id="8yiec"></del><fieldset id="8yiec"></fieldset><center id="8yiec"><fieldset id="8yiec"><optgroup id="8yiec"></optgroup></fieldset></center><code id="8yiec"><table id="8yiec"><del id="8yiec"></del></table></code></div>

<
</html>